cond

Mit cond können mehrfache Fallunterscheidungen ausgedrückt werden. Ein Cond-Ausdruck hat im allgemeinen folgende Struktur:

(cond (expr-11 [expr-12])
(expr-21 [expr-22])
...
(expr-n1 [expr-n2]))

Die eckigen Klammern sollen versinnbildlichen, dass die eingeschlossenen Ausdrücke expr-12, expr-22, ..., expr-n2 optional sind.

Die Auswertung eines Cond-Ausdrucks erfolgt so, dass zunächst expr-11 ausgewertet wird. Wenn sich der Wert nil ergibt, wird expr-21 ausgewertet usw. Wenn auch expr-n1 den Wert nil ergibt, ist der Wert des gesamten Cond-Ausdrucks nil.

Wenn ein expr-i1 einen Wert ungleich nil ergibt, ist das der Wert des gesamten Cond-Ausdrucks, wenn der optionale Teil expr-i2 fehlt.

Ansonsten wird expr-i2 ausgewertet und das Resultat dieser Auswertung ist das Resultat des gesamten Ausdrucks.