2009-07-22 8 views

risposta

6

In Clojure, #'foo è un'abbreviazione per (var foo), che restituisce l'oggetto variabile foo riferisce a, rispetto al suo valore. Cercarlo nel riferimento:

Non sono sicuro se si vuole anche conoscere il significato in Lisp: In Common Lisp, #'foo è una scorciatoia per (function foo), che viene utilizzato per accedere al valore funzione di legato al nome foo quando non è in posizione dell'operatore.

+2

leggermente sbagliato. (funzione foo) cerca il valore funzionale, vero, ma non necessariamente dal simbolo. Una funzione lessicale non ha simboli coinvolti, quindi considera il valore funzionale associato al nome (!) Foo dall'ambiente lessicale. –

+3

Corretto, corretto. Dovrei davvero fissare la mia tendenza a dire "simbolo" quando intendo "nome". – Svante