是否有任何宏可以帮助用一个开放参数创建一个函数?

woo*_*ngs 1 clojure

(map (fn [x] (func 1 2 x)) [0 1 2])在哪里func需要3个参数可以写(map #(func 1 2 %) [0 1 2])为简短.是否有可能使它更简洁?就像在OCaml中一样,(func 1 2)它本身就是一个功能.我不需要创建一个新的并将其传递给map.

Joo*_*aat 5

Clojure不会自动调整,所以你不能只说(func 1 2),但你可以使用partial:

(map (partial func 1 2) [0 1 2])