Prädikat Common Lisp

8

Weißt du, woher bekomme ich die Quelle eines Prädikats in Common Lisp? (Der Inhalt des Prädikats, wenn Sie bevorzugen.) Zum Beispiel, Quellcode von setq, string = etc.

Danke!

    
lilawood 08.05.2011, 20:19
quelle

3 Antworten

4

Common Lisp-Entwicklungsumgebungen bieten normalerweise eine Möglichkeit, Definitionen in der Datei mit dem Quellcode nachzuschlagen.

Alternativ dazu kann FUNCTION-LAMBDA-EXPRESSION möglicherweise die Quelle eines Prädikats und anderes wiederherstellen Funktionen, wenn die Lisp-Umgebung zum Speichern der Definitionen konfiguriert wurde.

Sie können auch in den Lisp-Dateien von Open-Source-Lisp-Implementierungen suchen. Zum Beispiel wird in Clozure CL setq in der Datei compiler / nx1.lisp der Distribution definiert. Ein Tipp ist, ein Leerzeichen vor das Suchwort zu setzen, um Übereinstimmungen wie (setq zu umgehen.

    
Terje Norderhaug 08.05.2011, 20:44
quelle
1

SLIME kann für mindestens SBCL die Definitionen durch Drücken von "M-." nachschlagen, aber Sie müssen SBCL aus der Quelle kompiliert haben, damit dies funktioniert, da der Pfad zu den Quelldefinitionen in die Binärdatei eingebettet ist und Wenn Sie eine Binärdistribution verwenden, werden Sie die Quelldateien wahrscheinlich nicht am selben Ort haben.

    
Elias Mårtenson 10.05.2011 07:38
quelle
0

SETQ ist kein Prädikat. Es ist nicht einmal eine Funktion, weshalb Sie es nicht über die IDE finden konnten. STRING = ist ein Prädikat und eine Funktion, also funktioniert es besser.

Meinst du "primitiv?" für "Prädikat"?

    
mtraven 10.05.2011 00:58
quelle

Tags und Links