在clojure中,我想知道以下三个之间有什么区别。
(println (map + '(1 2 3) '(4 5 6)))
(println (map '+ '(1 2 3) '(4 5 6)))
(println (map #'+ '(1 2 3) '(4 5 6)))
结果是
(5 7 9)
(4 5 6)
(5 7 9)
我无法理解第二个人的行为。
我觉得第一个和第三个在 clojure 中是相同的,它是 Lisp-1,并且不区分评估变量和同名函数。
这可能是一个基本问题,但似乎没有足够的信息。请教我。
谢谢。