为什么这个GHCi表达式没有任何输出?



编辑:好吧,我知道这没什么问题,但我不知道为什么它不输出

let y = 2 * x where x = sum[1..3]

我只是想知道,因为另一个表达式确实给出了输出

let x = sum[1..3] in 2 * x

啊。所以让……在…是一个表达式。然而,让……也可以发生在do块中。我鼓励您这样考虑GHCi的行为:如果您输入看起来像原始表达式的东西,它会对其进行计算并打印结果。另一方面,如果您输入的内容看起来可能属于IO do块,它将简单地执行该操作。——@Alec

最新更新