2009-07-22 3 views

ответ

6

В Clojure, #'foo является сокращением для (var foo), который возвращает изменяемый объектfoo ссылается, в отличие от его стоимости. Посмотрите на него в ссылке:

Я не уверен, что если вы хотите знать значение в Lisp: В Common Lisp, #'foo является обобщающим для (function foo), который используется для доступа к значению функции связанного с именем foo, когда он не оператор.

+2

Неправильно. (функция foo) ищет функциональное значение, true, но не обязательно из символа. Лексическая функция не имеет символов, поэтому она смотрит на функциональное значение, связанное с именем (!) Foo из лексической среды. –

+3

Право, исправлено. Я действительно должен исправить свою склонность сказать «символ», когда я имею в виду «имя». – Svante