对于map、filter、find等函数,通常会出现一个参数的lambda函数。
我认为一个宏,如下所示,非常有用:(fn-> :value inc (> 1)),它相当于(#(-> % :value inc (> 1)))
如下:
(defmacro fn->
[& forms]
`(fn [x#] (-> x# ~@forms)))
(defmacro fn->>
[& forms]
`(fn [x#] (->> x# ~@forms)))
我认为如果出现在核心库中,这样会更有利于可读性。您的看法呢?