据我了解,Clojure 不会公开读取器宏表或允许用户定义读取器宏。
From http://clojure.org/reader http://clojure.org/reader:
The read table is currently not accessible to user programs.
我只是想知道是否有明确或明确的声明(大概来自 Rich Hickey)说明将它们排除在 Clojure 之外的理由。
注意我是not询问 Clojure 缺少用户定义的读取器宏是好事还是坏事。只是想知道为什么。
来自link https://groups.google.com/forum/#!topic/clojure/8RSLNWno0nU在matt的评论中,引用Clojure的作者Rich Hickey的回答:
我不相信 Clojure 中需要读取器宏
时间。它们极大地降低了使用它们的代码的可读性(通过
以其他方式了解 Clojure 的人),鼓励不兼容的自定义迷你
语言和方言(与命名空间分区的宏相比),以及
使加载和评估变得复杂。
在某种程度上,我愿意满足与其他人不同的共同需求
我自己的(例如正则表达式),我认为很多事情本来会有
强迫人们阅读宏可能最终会出现在 Clojure 中,每个人都
可以从通用方法中受益。
Clojure 可以说是一种非常简单的语言,并且在这种简单性中
在于一种不同的力量。
我现在要继续追求这个,
Rich
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)