gpt4 book ai didi

haskell - 浏览前奏的源代码会产生怪异

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

我在寻找 seq 的定义并遇到了这种奇怪的事情。为什么所有这些函数都有相同/相似的定义?

seq :: a -> b -> b
seq = let x = x in x

inline :: a -> a
inline = let x = x in x

lazy :: a -> a
lazy = let x = x in x

源代码中还有更多具有此定义的内容。这是怎么回事?

最佳答案

发生的事情是这些功能无法在 Haskell 中实现,但它们应该出现在文档中。由于haddock每个签名都需要一个语法正确(并且类型正确)的定义,源必须包含虚拟定义。此外,在它们被定义的地方(在 ghc-prim 包中),error (因此 undefined )尚不可用,因此更明显的 seq = error "Not implementable in Haskell"不能使用,因此是循环定义。

关于haskell - 浏览前奏的源代码会产生怪异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8652368/

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