2013-03-05 28 views
1

我刚刚开始与Haskell,我不明白一件事 - 为什么不这样的工作?'< - '后Haskell无法调用函数?

fun f = f * f 
main = 
    do 
     foo <- getLine 
     bar <- getLine 
     print (fun 4) 

我一直收到来自ghc的输入`print'的解析错误。但是对我来说更加神秘的是它在移除foo < - getLine和bar < - getLine之后起作用。有任何想法吗?

回答

10

这意味着你正在混合标签和空格。注意白色空间对解析Haskell很重要。您的print行可能过于缩进(或者缩进程度不够)。替换您的所有标签!

编辑:注意您发布的代码的副本/粘贴将只使用空格,并正常工作。

+0

哈!没错,谢谢!我不知道这是如此重要。 – 2013-03-05 21:27:27