apply

Der Aufruf (apply f l) wendet die Funktion f auf die Liste der Argumente l an.

> (apply number? (list 3))
t

> (apply * (list 2 3 4 5))
120

> (apply (lambda (x) (* 2 x)) (list 2))
4


Die Funktion apply verwendet das Macro eval und die Funktion cons:

(setq apply
  (lambda (fn l)
    (eval (cons fn l))))