LISP: Lambda-Problem

Hallo,

folgende Situation (der Normalfall):
((LAMBDA (X) (* X X)) 5)
==> 25
Bis hierher ist ja alles völlig ok.

Aber:
(SETQ P '(X))
==> (X)
((LAMBDA P (* X X)) 5)

Ich habe versucht, der Lambda-Funktion ihre Argumentliste in Form
einer Variablen zu geben.
Wenn ich die letzte Zeile evaluieren will, bekomme ich immer
Fehlermeldungen. Ich habe schon verschiede Varianten probiert
aber ich bekomme es einfach nicht hin.

Es ist aber erforderlich, dass eine Lambda-Funktion ihre Argumentliste von einer Variablen bekommen muss.

Ich benutze: Allegro CL 6.0 (Win)

Vielen Dank schonmal.

Ben

Hallo,
das kann nicht funktionieren, da durch den Lambda-Ausruck P nicht ausgewertet wird! Die beiden P haben also nichts gemeinsam, bis auf den Namen. Sicher das die Argumentliste mit einer Variablen übergeben werden muß, oder soll eine Liste von Argumenten auf die Lambda-Funktion angewendet werden?