Das ging bisher gar nicht:
let { f = \ x -> if x > 0 then x * f (x -1) else 1 } in f 5
Lösung 1: benutze Fixpunktkombinator
let { Theta = ... } in let { f = Theta ( \ g -> \ x -> if x > 0 then x * g (x - 1) else 1 ) } in f 5
Lösung 2 (später): realisiere Fixpunktberechnung im Interpreter (neuer AST-Knotentyp)