Utwórz żółwia (konstruktor synchroniczny)

(newturtle)
newturtle [instrukcje]
(newturtle [instrukcje] wyrażenie1 wyrażenie2 ...)
newturtle funkcja
(newturtle funkcja wyrażenie1 wyrażenie2 ...)

(newt)
newt [instrukcje]
(newt [instrukcje] wyrażenie1 wyrażenie2 ...)
newt funkcja
(newt funkcja wyrażenie1 wyrażenie2 ...)

Tworzy nowego żółwia. Lista instrukcji lub funkcja podane jako argument są wykonywane jako konstruktor nowego żółwia. Żółw wywołujący instrukcję newturtle czeka na zakończenie wykonania konstruktora. Argumenty konstruktora mogą być podane jako opcjonalne wyrażenia.

Przykład 1:

"t := (newt)
print who
print children
print parent @ :t
print who @ :t

Rezultat wykonania:

first
[t1]
first
t1

Przykład 2:

"t := newt [
  "x := 10
  print who
]
print :x @ :t

Rezultat wykonania:

t1
10

Przykład 3:

to model :x
  to fn
    op :zmienna^2
  end
  let "zmienna :x
  (print who :x)
end

"t := (newt $model 5)
print fn @ :t

Rezultat wykonania:

model1 5
25

Zobacz także:

Żółw - obiekt
Synchronizacja wielu obiektów

Spis treści