gpt4 book ai didi

dictionary - Clojure换能器渴望吗?

转载 作者:行者123 更新时间:2023-12-03 09:35:28 26 4
gpt4 key购买 nike

在此博客条目"CSP and transducers in JavaScript"中,作者指出:

First, we have to realise that many array (or other collection) operations like map, filter and reverse can be defined in terms of a reduce.



因此,在Clojure中 then we see的许多实现并不是很懒,他们很渴望:
 user> (defn eager-map [f coll]
(reduce (fn [acc v] (conj acc (f v)))
[]
coll))
#'user/eager-map
user> (eager-map inc (range 10))
[1 2 3 4 5 6 7 8 9 10]

我的问题是,Clojure换能器渴望吗?

最佳答案

换能器是非常简单的功能-它们没有懒惰的概念,或者根本没有应用它们的概念。这就是这个主意的美-通过换能器,我们可以将mapfilter之类的功能与它们所操作的事物分开。

因此,是的,它们可用于构建惰性序列以及 channel 和归约。当换能器函数本身很急切时,它取决于您要换能器对其进行调用的方式。惰性序列只能在消耗换能器时懒惰地调用换能器,而 reducer 会急切地使用它们来吐出 reducer 。

您可以看到in the source,其中sequence用于在带有换能器的集合上构建惰性序列。

关于dictionary - Clojure换能器渴望吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25656114/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com