前段时间学习 Haskell,我爱上了 pointfree 表示法和特别方便的偏函数应用程序 - 只需提供你知道的 args。在 Clojure 中,我一直partial
都有。我认为为部分阅读器提供特殊的语法会很高兴。
看示例代码:
; Notation with points:
(map (+ 10 (* % 2)) [1 2 3])
; With partial:
(map (comp (partial + 10) (partial * 2)) [1 2 3])
; Let #[] syntax means partial application in reader:
(map (comp #[+ 10] #[* 2]) [1 2 3])
这太好了!有这样的事情吗?是否有可能定义自定义阅读器宏?