2024年Clojure调查!分享您的想法。

欢迎!请查看关于页面以获取更多关于它是如何工作的信息。

0
Records and Types

在defrecord体内部可以引用->type-ctor,但在deftype内部却不能。

此补丁添加了一个隐式的declare,如defrecord中所做的,这使得可以在deftype方法中使用->type-ctor。

5 个答案

0

评论者:halgari

看起来有效。正在审查。

0

评论者: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}}既往的经验。

0

评论者:alexmiller

没有考虑重要的增强,所以很难确定何时进行评估。我已经将其在流程中向下推进了一个步骤。

0

评论者:samestep

谢谢,Alex!我完全理解这并不是一个特别重要的问题;然而,看到它越来越接近修复还是令人鼓舞。

0
参考:[https://clojure.atlassian.net/browse/CLJ-1044](https://clojure.atlassian.net/browse/CLJ-1044) (由 bronsa 汇报)
...