#.

Wenn der Parser auf die Zeichenfolge #. stößt, dann wird die auf die Zeichenfolge folgende S-Expression ausgewertet und das Ergebnis der Auswertung als Resultat des Parsens verwendet. Das nennt man Read-Time Evaluation. Zum Beispiel wird "(quote (1 3 #.(+ 2 3)))" zu (1 3 5) geparst.

Eine Anwendung von Read-Time Evaluation ist das Wiedereinlesen von als Zeichenketten ausgegebenen Instanzen, denn die externe Repräsentation einer Instanz hat die Form

#.(let ((instance (allocate-instance <Klasse der Instanz>))) (progn (assignq instance <Name einer Instanzvariable> <Wert der Instanzvariable>) ... instance))


Siehe auch: write-to-string, read-from-string, #n=, #n#.