Expression = Integer | List | "$" Integer | Operator Expression . List = [ RefType ] "(" [ Expression { "," Expression } ] ")" . RefType = "heavy" | "light" . Operator = "kill" . (* Resources.Notify *)Um die neue Form der Listen rasch testen zu können, wurde hier die Zahl der Variablen auf 4 begrenzt, d.h. bei der fünften Eingabe wird der schwere Verweis auf den früheren Inhalt von $0 aufgegeben. Hier ist eine Beispielsitzung:
helios$ tlists > light (1, 2, 3) $0 = (1, 2, 3) > light ($0, 4, 5) $1 = ((1, 2, 3), 4, 5) > light ($1, 6, 7) $2 = (((1, 2, 3), 4, 5), 6, 7) > light ($2, $1, $0) $3 = ((((1, 2, 3), 4, 5), 6, 7), ((1, 2, 3), 4, 5), (1, 2, 3)) > (11, 22, 33) $0 = (11, 22, 33) > $3 $1 = (((4, 5), 6, 7), (4, 5)) > $3 $2 = ((6, 7)) > helios$