目標:有一個字符串並打印同樣的事情在控制檯一樣需要同樣的行動,永遠理解永遠在Haskell
做我想出了這樣的事情,沒有編譯錯誤,但工作不正常。
greet_buggy :: String -> IO()
greet_buggy = forever $ putStrLn
問題在於字符串不在控制檯中打印任何內容。
greet_buggy "something"
基於this post我試圖調試和改變像下面的定義。它工作正常
greet :: IO()
greet = forever $ putStrLn "Hello"
任何人都可以解釋這是怎麼回事嗎?單獨使用forever
可以達到相同效果嗎?
編輯:發現一個更多的相關post(感謝@丹尼爾瓦格納),即使通過這個問題是從我的不同,答案解釋約forever
。
嘗試'greet_buggy =永遠。 putStrLn' – user2297560
感謝,像迎接工作,但它仍然不是我的目標的完整解決方案?我想接受字符串並打印它,並接受一個像這樣的字符串永遠 –