Pekny, pre zaciatocnika mozno vhodnejsi, je dialekt LISPu -- Scheme [ http://www.schemers.org ], ktory ma viacero implemenetacii, napr. guile pouziva GIMP. Najcastejsie sa vsak natrafi na MIT Scheme a zaujimavy, ale IIRC bohuzial iba pre windows je Dr. Scheme. Este mi neda, nespomenut krasnu kontrukciu "continuations", ktore som okrem jazykov z rodiny LISP inde nevidel. Co sa tyka first a rest je to hnus. :) Skalny pouzivaju car a cdr uz len preto, ze sa to da pekne kombinovat do caar, cdar, caadr a pod. ;)
I dalsi jazyky maji continuations ... minimalne Ruby :-)
"Kernel::callcc":
Generates a Continuation object, which it passes to the associated
block. Performing a cont.call will cause the callcc to return (as
will falling through the end of the block). The value returned by
the callcc is the value of the block, or the value passed to
cont.call. See Continuation on page 298 for more details. Also see
Kernel::throw for an alternative mechanism for unwinding a call
stack.