Rah*_*ool 2 haskell functional-programming
我是Haskell的新手,在haskell中编写一个小代码时,我遇到了一个名为的错误
Last generator in do {...} must be an expression
Run Code Online (Sandbox Code Playgroud)
我努力删除此错误但失败了.
我访问堆栈溢出这个错误,我发现但答案是太大而复杂,所以我无法理解.
我的代码是
main = do
putStrLn "What is your name?"
name <- getLine
putStrLn ("Name of customer is "++ name)
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我,所以这个错误可以解决,你的帮助必须得到赞赏
在您的原始问题中,您的四行有这些缩进:
猜测,StackOverflow的"插入代码"按钮插入了(1)的缩进,因此您的原始源可能有这个缩进:
GHC将制表符视为扩展为八空格式制表符,但do块中的每一行必须彼此对齐(对于初学者,应该比封闭块更深入缩进).因此,我推荐以下两种解决方案之一:
要么
以下内容也适用(并且是最合理的指标对原始内容的最小编辑),但我强烈建议不要这样做.
请参阅为什么我不应该混合标签和空格?进一步讨论空白风格.