怎么用符号写这个?

Luk*_*uke 2 haskell

我正在完成"在48小时内为自己写一个计划解释器",一个练习是使用do notation编写一个函数.这是功能:

parseNumber :: Parser LispVal
parseNumber = liftM (Number . read) $ many1 digit
Run Code Online (Sandbox Code Playgroud)

我尝试了以下,但这不起作用:

parseNumber2 :: Parser LispVal
parseNumber2 = do digits <- many1 digit
                  return $ liftM $  (Number . read) digits
Run Code Online (Sandbox Code Playgroud)

没关系.我错误地缩进了代码

sep*_*p2k 6

一旦你打开包装digits,你就不再需要liftM了.所以它只是:

return $ Number $ read digits
Run Code Online (Sandbox Code Playgroud)