In LISP-ähnlichen Sprachen sind alle Sprachkonstrukte erstklassige Bürger.Können alle Sprachkonstrukte in Sprachen mit Abseitsregeln erstklassig sein?
Betrachten Sie das folgende Beispiel in Dylan:
let x = if (c)
foo();
else
bar();
end;
und in LISP:
(setf x (if c (foo) (bar)))
In Python müsste man schreiben:
if c:
x = foo();
else:
x = bar();
Da Python-Anweisungen und Ausdrücke destinguishes .
Können alle Sprachkonstrukte in einer Sprache, die der Offside-Regel folgt (eine einrückungsbasierte Syntax hat) Ausdrücke sein, so dass Sie sie Variablen zuweisen oder als Parameter übergeben können?
ich nicht so sicher bin, wenn Ausdruck in Lisp es so einfach, wie es klingen mag ... es ist eine besondere Form, weil sie mit den gleichen Regeln wie eine einfache Funktion nicht ausgewertet sind . – fortran