一个 “做” 语法中我知道这个工程:HASKELL ---用 “让” 在GHCI
do name <- getLine; let nameTag = "Hello, my name is " ++ name in putStrLn nameTag
除了这段代码在加载到GHCI:
hey = do
name <- getLine
let nameTag = "Hello, my name is " ++ name
putStrLn nameTag
但是,这并不工作:
do name <- getLine; let nameTag = "Hello, my name is " ++ name; putStrLn nameTag
给出以下错误消息:
<interactive>:142:82:
parse error (possibly incorrect indentation or mismatched brackets)
它为什么不起作用?我可以使它工作吗?如果是,那么如何?
请格式化您的代码。 –
问题是解析器认为你的代码的结构是'let {nameTag = ...; putStrLn nameTag“'它在哪里期望赋值而不是'putStrLn nameTag'。 – Bakuriu