我正在使用 Hugs 解释器,我想执行以下代码(由 Haskell 2010 语言报告提供):
let x = 1
z = x+y
in z+1
是否只能创建.hs
文件并加载?我可以直接通过命令行执行吗?
(对不起 - 没有意识到你的问题是关于拥抱而不是 ghci。)
您可以:{
在 ghci 中使用来输入多行表达式:
shell$ ghci
GHCi, version 7.10.2: http://www.haskell.org/ghc/ :? for help
Prelude> :{
Prelude| let z = 1
Prelude| w = 3
Prelude| in z + w
Prelude| :}
4
Prelude>
即使在这种情况下您不能将多行语句输入到拥抱中,也可以在一行中完成所有操作。
您可以像这样使用两个let ... in ...
:
let x = 1 in let z = x+y in z + 1
或者您可以使用;
多个定义,如下所示:
let x=1; z=x+y in z + 1