请在 Clojure 2024状态调查中分享您的想法!

欢迎!请在关于页面查看有关如何使用此功能的更多信息。

0
文档

reduce的文档字符串包括以下内容:"如果没有提供val,返回将f应用于coll中前两个元素的返回结果"。如果coll是一个序列,这是正确的,但如果是一个reducer则不正确。例如

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)

应该更新文档字符串,使其明确指出,当没有提供初始种子值时,reducers(reducer)需要supporting一个0参数的重载,返回reduction操作的身份值。

1 答案

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