|
|
1
11
GHC中where的语义是为x分配一个闭包,并在所有使用中共享。将为函数(='x')生成一个新的闭包,优化器将把它浮出来,这样每次遍历只生成一次。 要查看生成的代码,请检查核心(例如通过ghc核心)。GHC优化代码以:
|
|
|
2
0
我认为Haskell只会评估需要什么:所以它在寻找
编辑:
下面是一个小函数来测试:
|