我刚刚开始尝试学习Haskell,但是遇到了问题。我正在使用Windows CMD,并且已经为我的第一个程序创建了一个program.hs
.txt文件,其中包括一个简单的a + b函数。我已经在txt文件中写了answer = a + b
,然后在CMD中打开了GHCI。我已成功加载程序,但是当我键入answer 1 5
而不是返回6时,它将返回
Variable not in scope: answer :: Integer -> Integer -> t
请您提供帮助并向我解释一下。谢谢。
答案 0 :(得分:1)
似乎您没有正确加载文件。也许您加载了另一个文件?很难说。
GHCi中的“不在范围内”表示您加载的模块(如果有)不会导出该变量。
此外,您的Haskell代码是错误的。 answer = a + b
假设在加载模块时已经定义了变量a
和b
,例如他们在那里定义。这些变量将触发“不在范围内”错误。
如果您希望answer
是一个函数,则需要将其定义为一个函数,例如
answer a b = a + b
-- ^^^ --
请注意其他参数。