在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,并且不区分评估变量和同名函数。
这可能是一个基础问题,但似乎没有足够的信息。请教一下我。
谢谢。