Haskell 什么是;此功能将熔断;什么意思?

Haskell 什么是;此功能将熔断;什么意思?,haskell,terminology,Haskell,Terminology,的文档说明“此功能将融合”。fuse在这里到底是什么意思?这不好吗?这有点像协同程序——如果你组合两个函数,它们可以在融合的流上执行,而不是一个先被完全“评估”,然后是第二个 (更多信息请参见:) 如果一个函数将熔断,这是一件好事。这意味着一系列函数可以合并为一个函数,这意味着更少的分配、更少的堆栈和更快的速度!太棒了 这里有一个简单的融合:mapf。地图g--->地图(f.g) 如上所述,标准库的规则也适用于许多其他方法。我假设它指的是流融合优化技术,并声明它们可以应用于函数。本质上,如果您

的文档说明“此功能将融合”。fuse在这里到底是什么意思?这不好吗?

这有点像协同程序——如果你组合两个函数,它们可以在融合的流上执行,而不是一个先被完全“评估”,然后是第二个

(更多信息请参见:)

如果一个函数将熔断,这是一件好事。这意味着一系列函数可以合并为一个函数,这意味着更少的分配、更少的堆栈和更快的速度!太棒了

这里有一个简单的融合:
mapf。地图g
--->
地图(f.g)


如上所述,标准库的规则也适用于许多其他方法。

我假设它指的是流融合优化技术,并声明它们可以应用于函数。本质上,如果您有两个转换序列的函数,优化器会将转换合并在一起,因此只需要一次遍历


简言之,不,还不错。恰恰相反

正如线程详细说明的那样,默认情况下我们没有流融合。相反,我们有一种称为build/foldr fusion(或shortcutfusion)的soemthing,请参见我上面提供的链接。Fusion非常棒,流式Fusion比build/fold更棒,但我记得有一些未解决的边缘案例阻止了它在标准LIB中的应用。同时,其他lib,如
Text
Vector
,如我所知,确实使用了流融合。这是一本很好的读物。在本例中,流融合。比捷径融合更好;-)