Haskell解析错误 - 顶层的裸体表达

时间:2012-06-17 05:29:36

标签: haskell

我有一个haskell文件test.hs. 在这个文件中我写了一个函数

doubleMe x: x + x

这是此文件test.hs中唯一的函数。 在ghci命令提示符下,我输入了“:l test.hs”,没有引号。 出现以下错误:

compiling main  <test.hs interpreted>
test.hs:1:1 Parse error: naked expression at top level
Failed: modules loaded:none

导致此错误的原因是什么。

我经历过 Haskell Error - Naked Expression at Top Level

what is parse error: naked expression at top level?

没有用。

1 个答案:

答案 0 :(得分:12)

您需要=而不是:,所以:

doubleMe x = x + x

如果您尝试使用:,GHC会使用:doubleMe x上的x + x运算符对其进行解析。这是一个函数应用程序,因此它是一个表达式(表达式基本上是一系列具有结果的标记)。由于它没有包含在函数或变量声明中,因此它是一个“裸表达式”,这是一个错误。