2024 Clojure状态调查!分享您的想法:

欢迎!有关此页面的更多信息,请参阅关于页面。

0
文档

reduce的docstring包括以下内容:“如果不提供val,则返回对coll中的前两项应用f的结果”。当coll是一个序列时,这是正确的,但如果它是一个reducers,则不是。例如

user=> (->> (range 0 10 2) (reduce (fn[x y] (+ x y)))) 20 user=> (->> (range 0 10 2) (r/map #(/ % 2)) (reduce (fn[x y] (+ x y)))) ArityException 错误的参数数量(0)

应更新docstring,以明确指出reducers(不提供初始种子值时使用)的reducing函数需要支持0参数的重载,返回用于reduction操作的恒等值。

1 答案

0
参考资料:https://clojure.atlassian.net/browse/CLJ-1443(由glchapman报告)
...