在Clojure / Lisp中评估double和#'double有什么区别?
1:2 user=> double
#<core$double__4077 clojure.core$double__4077@1acd47>
1:3 user=> #'double
#'clojure.core/double
答案 0 :(得分:6)
在Clojure中,#'foo
是(var foo)
的简写,它返回变量对象 foo
所引用的,而不是其值。在参考文献中查找:
我不确定你是否也想知道Lisp中的含义:在Common Lisp中,#'foo
是(function foo)
的简写,用于访问函数值在不在操作员位置时绑定到名称foo
。