ここで、1.5 で導入された clojure レデューサーについて読んでいました: https://github.com/clojure/clojure/blob/master/changes.md。私の理解では、それらは既存の map/filter/reduce 関数のパフォーマンス強化です。その場合、なぜそれらが新しい名前空間にあり、既存の map/reduce/filter 実装を単純に置き換えないのか疑問に思っています。別の言い方をすれば、新しいレデューサー機能を使用しないのはなぜでしょうか?
編集:
最初の2つの回答に応じて、ここに明確化があります:
ここでリリースノートを引用します。
レデューサーは、コレクションを操作するための高性能関数のセットを提供します。実際のフォールド/リデュース アルゴリズムは、リデュースされるコレクションを介して指定されます。これにより、各コレクションはその内容を削減する最も効率的な方法を定義できます。
これは、新しい map/filter/reduce 関数が本質的に並列であるようには思えません。たとえば、リリースノートのさらに下には、次のように記載されています。
並列のreduce+combineである新しい関数foldが含まれています
そのため、リリース ノートの記述が不十分でない限り、新しい関数 fold が 1 つあり、これは並列であり、他の関数は、特定のコレクションで可能な限り最高のパフォーマンスを実現することを目的としたコレクション固有の実装であると思われます。ここでリリースノートを読み間違えただけですか?