请在2024年Clojure状态调查!分享您的看法。

欢迎!请参阅关于页面了解有关本站运作方式的一些更多信息。

0
Transducers

与transduce、sequence和a/chan相比,eduction的独特之处在于它接受一个xform列表,而不是用户编写的列表。这么做是否有动机,或者这只是历史偶然?

1 答案

+1

动机似乎是为了帮助将使用->>的lazy-seq代码转换为,例如:

(->> s (interpose 5) (partition-all 2))

到这个:

(->> s (eduction (interpose 5) (partition-all 2)))

以下例子来自上面的链接。

对于`sequence`,同样的动机可能更为强烈,我怀疑这并不是主要的原因。
...