欢迎!请参阅 关于 页面以了解关于此的更多信息。
在 defrecord 身体内可以引用 ->type-ctor,但这是不可能在 deftype 内实现的。
这个补丁添加了一个隐式的声明,就像在 defrecord 中所做的那样,使得可以在 deftype 方法中使用 ->type-ctor。
评论者:halgari
看起来是合理的。正在审查。
评论者:samestep
这会很快被集成吗?在定义数据结构时(例如,((链接: http://codereview.stackexchange.com/q/121633/82369 文本:示例))需要显式 {{declare}} 工厂函数是尴尬的。当前的情景违反了(链接: https://en.wikipedia.org/wiki/Principle_of_least_astonishment 文本:最少惊讶原则);在处理(链接: http://www.leonardoborges.com/writings/2012/11/30/monads-in-small-bites-part-i-functors/ 文本:这篇教程)时,我在发现 {{defrecord}} 确实 会隐式 {{declare}} 工厂函数时感到非常惊讶,这与我的先前经验 {{deftype}} 相冲突。
评论人:alexmiller
没有增强被考虑为关键,所以很难说这个功能何时会被评估。我已经将它至少向下推进了一个步骤。
感谢,Alex!我完全理解这并不是一个特别重要的问题;不过,看到这个问题越来越接近解决方案还是很令人鼓舞的。