В чем разница между оценкой double и #'double в Clojure/Lisp?
1:2 user=> double
#<core$double__4077 clojure.core$double__4077@1acd47>
1:3 user=> #'double
#'clojure.core/double
В чем разница между оценкой double и #'double в Clojure/Lisp?
1:2 user=> double
#<core$double__4077 clojure.core$double__4077@1acd47>
1:3 user=> #'double
#'clojure.core/double
В Clojure #'foo — это сокращение от (var foo), которое возвращает объект переменной, на который ссылается foo, а не его значение. Посмотрите его в ссылке:
Я не уверен, хотите ли вы также знать значение в Лиспе: в Common Lisp #'foo — это сокращение для (function foo), которое используется для доступа к значению функции, связанному с именем foo, когда оно не находится в операторе. должность.