haskell
2013-09-27 69 views 2 likes 
2

我正在嘗試處理IO操作。我不知道爲什麼做這項工作:試圖處理IO操作

main = do 
    alias = getLine 
    name <- alias 
    putStrLn ("your name is: " ++ name) 

parse error on input `=' 

回答

10

添加關鍵字let

main = do 
    let alias = getLine 
    name <- alias 
    putStrLn ("your name is: " ++ name) 

do爲一元bind運營商指定的建築,它不是一個cosmic space。所有你寫入塊do確實是>>= monaidic函數的鏈。所以你應該使用let結構。 但是你可以在你的其他部分製作別名程序。

alias = getLine 

main = do 
    name <- alias 
    putStrLn ("your name is: " ++ name) 
+1

+1「宇宙空間」。這是我將來在Haskell代碼中追求的標準。 –

相關問題