Haskell模块,解析输入'sayhello'“`的错误

时间:2013-09-27 21:45:09

标签: haskell

module sayhello  
( inChinese  
, inSpanish   
) where 
inChinese  = "Ni Hao"  
inSpanish=  "Hola"

import sayhello

main = do

    print sayhello.inChinese
    print sayhello.inSpanish

我从这段代码中得到了错误。 "module.hs:1:8: parse error on input 'sayhello'" 我不明白为什么,需要你的帮助,谢谢。

编辑: 1发现问题我应该使用大写作为模块名称。

  1. 我遇到了另一个问题: 它显示:

    使用-o重定向输出,但不会生成任何输出 因为没有主模块。

  2. 为什么?感谢

1 个答案:

答案 0 :(得分:3)

您必须在module ModName (export list) where之后拥有所有导入语句和实际代码。此外,您不导入当前所在的模块:

module sayhello  
    ( inChinese  
    , inSpanish   
    ) where 

inChinese = "Ni Hao"  
inSpanish = "Hola"

main = do
    print inChinese
    print inSpanish