我正在尝试学习 Clojure,并且被文字函数语法所困。我不知道字面函数等价物(defn fourteen [] 14)
是什么。
(def fourteen (fn [] 14))
;; => #'user/fourteen
(fourteen)
;; => 14
(defn defn-fourteen [] 14)
;; => #'user/defn-fourteen
(defn-fourteen)
;; => 14
(def literal-14 #(14))
;; => #'user/literal-14
(literal-14)
;; ClassCastException java.lang.Long cannot be cast to clojure.lang.IFn user/literal-14 (form-init2956929406616221071.clj:1)
我不认为这是一个匿名函数在 clojure 中期望有多少参数?,但也许是这样,我只是没有经验来认识到这一点。
我如何或可以定义 literal-14 以允许(literal-14)
调用工作?