简单的clojure:为什么不同表达式的输出是相同的?

mag*_*pcu 0 clojure

(map (comp #(- 9  %) *) [2 4 6] [0 0 0])
Run Code Online (Sandbox Code Playgroud)

输出: (9 9 9)

(map (comp #(+ 9  %) *) [2 4 6] [0 0 0])
Run Code Online (Sandbox Code Playgroud)

输出: (9 9 9)

为什么这些输出相同?#(- 9 %)并且#(+ 9 %)是不同的.

cfr*_*ick 8

您将每个数字多为零:

(map * [2 4 6] [0 0 0])
;; -> (0 0 0)
Run Code Online (Sandbox Code Playgroud)

剩下的就是: 9-0 == 9+0