【发布时间】:2013-09-06 01:06:55
【问题描述】:
前段时间学习 Haskell,我爱上了 pointfree 表示法和特别方便的偏函数应用程序 - 只需提供你知道的 args。在 Clojure 中,我一直有 partial。我认为有一个用于部分 in reader 的特殊语法会很好。
看示例代码:
; 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])
这真是太好了!有这样的事情吗?是否有可能定义自定义阅读器宏?
【问题讨论】:
-
*Pointfree notation :) Pointless notation 有不同的含义
-
@demi:你应该试着编辑你的问题,让它更客观一点,少一点关于“好”和“好”的问题。我觉得你的问题很有趣(因为我对 Clojure 知之甚少,但我知道它缺少读取宏,例如,用 Common Lisp 编写类似的东西),但它太自以为是了。在我写这篇文章的那一刻,已经有 2 票赞成关闭它,所以请注意。
标签: clojure pointfree partial-application