在GHCi提示符下的声明

时间:2011-05-25 20:28:22

标签: haskell syntax declaration ghci

我刚安装了适用于Windows的Haskell平台(版本2011.2.0.1),并开始使用HaskellQuestions.pdf

第二个问题需要“x = 3”作为答案。但是当我把它输入GHCi时,我得到了

GHCi, version 7.0.3: http://www.haskell.org/ghc/  :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Loading package ffi-1.0 ... linking ... done.
Prelude> x = 3

<interactive>:1:3: parse error on input `='
Prelude>

为什么呢?我检查了答案,我是对的。这个问题与等号有什么关系?

1 个答案:

答案 0 :(得分:11)

在GHCi中,要分配一个值,你必须去

let x = 3

在常规Haskell代码中,x = 3有效(参见下面的NB)。

Real World HaskellGetting Started页面提供了很多关于使用GHCI的有用信息。

您还可以查看documentation for GHCi(但就个人而言,我发现真实世界Haskell更具消化性。)

N.B。正如评论中EdvardM所述,在此上下文中使用let的语法来自Haskell's do notation(如果您刚刚开始,请不要强调自己,如果您有点花时间,玩得开心,它应该在任何时候都有意义。)