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

欢迎!请参阅关于页面了解更多关于这如何工作的信息。

0
Clojure

首先,core.reducers需要clojure.walk :as walk,但并未使用该别名。
其次,在函数reducer中对coll-reduce的两个arity实现使用了'this',而在该文件中的类似实现使用了'coll'。从我所知来看,使用'coll'并没有影响(所有测试都通过,性能没有变化),而且更符合其他代码的编写风格。

这两件事似乎足够小,可以合并为一个整理案例。

5 个回答

0

评论者:wagjo

您的补丁是错误的。如果您想用coll替换它,您还必须调用xf在f1上。

`(clojure.core.protocols/coll-reduce this f1 (f1))`

变成

`(clojure.core.protocols/coll-reduce coll (xf f1) (f1))`

0

评论者:ska2342

可怕的是,测试套件没有检测到这一点。

0

评论者:jafingerhut

添加一个能检测到这一点的测试是否简单明了?

0

评论者:ska2342

我很乐意调查这个问题。不过,可能需要几天时间我才能找到时间。

0
参考:https://clojure.atlassian.net/browse/CLJ-1151(由 ska2342 提出)
...