Vytvoření a inicializace řetězce : chars ; (již definováno) create jméno_řetězce délka_řetězce chars allot create pozdrav 10 chars allot : place over over >r >r char+ swap chars cmove r> r> c! ; create pozdrav 10 chars allot s" Hello! " pozdrav place Výpis jednoho znaku 65 emit Definice cr, bl a space, netřeba : cr 10 emit ; : bl 32 ; : space bl emit ; : spaces 0 do space loop ; 10 spaces Výpis celého řetězce nazev_retezce pocet_znaku type (vytiskne retezec) : length$ count swap drop ; : printlen$ length$ . cr ; s" Hello world!" type : chars ; ( některé Forthy toto slovo neznají ) : place over over >r >r char+ swap chars cmove r> r> c! ; : type ?dup if over + swap do i c@ emit loop else drop then ; : cr 10 emit ; ( pro ne-ASCII platformy nutno změnit ) create pozdrav 20 chars allot s" Hello world! " pozdrav place pozdrav count type cr Další slova určená pro manipulaci s řetězci : copy$ swap dup count 1+ swap drop rot swap cmove ; create prvni 10 chars allot create druhy 10 chars allot s" Hello!" prvni place prvni druhy copy$ prvni count type cr druhy count type cr : strlen ( adresa -- délka ) 0 begin over c@ 0= dup not if -rot 1+ swap 1+ swap rot then until nip ;