Każdy z tysiąca żółwi rysuje jedną nitkę w pomponie. Żółwie są opisane przez klasę "model", która definiuje funkcję obsługi sygnału "krok": obrót i krok w przód z losowo zmienianymi parametrami. Program tworzy 1000 żółwi, ale liczbę tą można zwiększać w miarę możliwości komputera.
Warto zwrócić uwagę na następujące elementy programu:
forever
, którą wykonuje,
mogłaby być wykonana także przez głównego żółwia, ale zablokowałoby to wykonanie instrukcji z linii
poleceń;
:go
(widocznej dla wszystkich żółwi) i pozwala wstrzymać rysowanie; gdy
:go = true
żółw :u
w pętli wysyła sygnał "krok" z maksymalną prędkością,
gdy :go = false
żółw
:u
w każdej iteracji pętli czeka 10 milisekund by nie
obciążać procesora wykonywaniem pustej pętli;
(anewt $model :h :c)
;
zmiana tej instrukcji na:
(newt $model :h :c)
(instrukcja bez początkowej literki "a") spowoduje, że żółwie będą tworzone kolejno, co wyraźnie spowolni
uruchomienie programu przy dużej liczbie żółwi :n
.