标准的Haskell是延迟计算的,因此如果myCondition为真,if myCondition then someValue else doSomeLargeComputation x y z将避免计算我的问题是,如果我启用了语言扩展XStrict,那么即使myCondition为真,doSomeLargeComputation x y z现在也会被计算吗?如果是这样的话,除了显式地将doSomeLargeComputation x y z标记为惰性之外,还有什么控制流构造可以用来避免计算它(就像严格语言中的<
我目前正在阅读"Haskell Programming from first paragraph“,其中有一段是关于底部的,内容如下:
Prelude>设x=x在这里,GHCi检测到,让x=x在x中永远不会返回,并且短路了永无休止的计算。这是一个底部的考试,因为它永远不会返回一个结果。请注意,如果您使用的是Windows,则此示例可能会冻结