为什么以下功能在Clojure中不起作用:
(defn tests
[] 0
[a b] 1)
它出现以下错误:clojure.lang.Compiler$CompilerException: java.lang.RuntimeException: Unable to resolve symbol: a in this context
答案 0 :(得分:7)
每个都需要用括号括起来
(defn tests
([] 0)
([a b] 1))
答案 1 :(得分:0)
如果您想要超过2倍的var,请使用& more:
(defn maxz
"Returns the greatest of the nums."
([x] x)
([x y] (if (> x y) x y))
([x y & more]
(reduce maxz (maxz x y) more)))
(最大1 2 3 4 5 100 6)
=> 100