W clojure, chciałbym wiedzieć, jakie są różnice między trzema poniżej.W Clojure, różnica między funkcją, cytowaną funkcją i funkcją ostrych cudzysłowów
(println (map + '(1 2 3) '(4 5 6)))
(println (map '+ '(1 2 3) '(4 5 6)))
(println (map #'+ '(1 2 3) '(4 5 6)))
Wyniki są
(5 7 9)
(4 5 6)
(5 7 9)
nie mogę zrozumieć zachowanie drugi za.
Czuję, że pierwszy i trzeci jest taki sam w clojure, który jest Lisp-1 i nie rozróżnia między oceną zmiennej a identycznie nazwaną funkcją.
To może być podstawowe pytanie, ale wydaje się, że nie ma wystarczającej ilości informacji. Proszę, naucz mnie.
Dzięki.
Na marginesie, w idiomatycznym słownictwie idiomatyczne jest opisywanie dosłownych sekwencji wektorami zamiast cytowanych. –
O, widzę. Dziękuję, Alex. –