gpt4 book ai didi

math - Haskell 中的求和符号

转载 作者:行者123 更新时间:2023-12-04 13:18:10 25 4
gpt4 key购买 nike

在关于 summation 的维基百科页面上它说 Haskell 中的等效操作是使用 foldl。我的问题是:有什么理由说要使用 this 而不是 sum?一个比另一个更“纯粹”,还是没有真正的区别?

最佳答案

foldl是一般tail-recursive减少功能。递归是在函数式编程语言中处理项目列表的常用思维方式,它提供了一种循环迭代的替代方法,通常更优雅。对于像 fold 这样的 reduce 函数, 尾递归实现 is very efficient .正如其他人所解释的,sum那么只是 foldl (+) 0 l 的一个方便的助记符.

大概它在维基百科页面上的使用是为了说明通过尾递归求和的一般原则。但是自从 Haskell Prelude库包含 sum ,它更短且更容易理解,您应该在代码中使用它。

这是 nice discussion Haskell 的 fold带有简单示例的函数,非常值得一读。

关于math - Haskell 中的求和符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1339152/

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