gpt4 book ai didi

haskell - 使 GHC 后 FTP 感觉是前 FTP

转载 作者:行者123 更新时间:2023-12-03 14:54:43 25 4
gpt4 key购买 nike

对于使用最新版本的 GHC 向初学者教授 Haskell,由于 Foldable-Traversable-in-Prelude (FTP),某些函数的类型可能会令人困惑。例如,列表上的基本功能,如 length , sumproduct具有包含 Foldable 的类型约束 foldr :: Foldable t => (a -> b -> b) -> b -> t a -> b .类似地,对于一些介绍性的高阶函数,例如foldl :: Foldable t => (b -> a -> b) -> b -> t a -> b .

什么是临时启用 pre-FTP 行为的轻量级方法?然后初学者仍然可以享受最新 GHC 的所有好处,而不必求助于尝试安装旧版本或使用 Hugs(例如 edX 的 FP101x 2015 版的建议)。

最佳答案

这可以正常工作,但我们决定为 http://haskellbook.com/ 选择不那么乏味的东西。 ,我们所做的是解释了发生了什么变化,并向他们展示了如何断言基于列表的类型。

Prelude> :t length
length :: Foldable t => t a -> Int
Prelude> :t length :: [a] -> Int
length :: [a] -> Int

在这与示例和练习中断言的类型之间,这就足够了,如果他们不小心遇到了一个包含 Foldable 的类型,它不会造成麻烦,因为我们已经告诉他们事情是如何变化的。

让他们进口东西而不费心告诉他们发生了什么似乎很脆弱,因为如果他们偏离了幸福的道路,他们会感到困惑。

关于haskell - 使 GHC 后 FTP 感觉是前 FTP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33288935/

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