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

欢迎!请参阅关于页面以获取更多关于如何使用此功能的信息。

0
Clojure

首先,core.reducers 需要 clojure.walk :as walk,但不使用别名。
其次,函数 reducer 中 coll-reduce 的两个参数实现使用 'this',而该文件中类似实现使用 'coll'。据我所知,使用 'coll' 没有任何区别(所有测试通过,性能没有变化)且更符合其他代码的编写方式。

这两件事看起来足够小,可以合并到一个清理案例中。

5个答案

0

评论者:wagjo

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

`(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](https://clojure.atlassian.net/browse/CLJ-1151)(报告人:ska2342)
...