我正在尝试编译这个简单的程序
main :: IO()
def main = do
putStrLn "Was lernst du?"
sprache <- getLine putStrLn ("Viel Erfolg beim " ++ sprache ++ " lernen!")
但我在终端上得到以下答案:
ghc --make waslernstdu1.hs
[1 of 1] Compiling Main ( waslernstdu1.hs, waslernstdu1.o )
waslernstdu1.hs:2:1:
The type signature for ‘main’ lacks an accompanying binding
assigals-Air:documents thommymuc2004$
如何解决此错误?
答案 0 :(得分:4)
您需要在定义中def
之前删除main
。您正在使用单个参数def
:
main
main :: IO()
main = do
putStrLn "Was lernst du?"
sprache <- getLine putStrLn ("Viel Erfolg beim " ++ sprache ++ " lernen!")
答案 1 :(得分:2)
您已为main
函数(即main :: IO ()
)提供了类型签名,但您尚未提供实现。实施的格式为main = <the implementation>
。