我有以下代码:
main = do
    putStr "Test input : "
    content <- getLine
    putStrLn content
当我运行它(带runhaskell)或编译它(ghc 6.10.4)时,结果是这样的:
asd
Test input : asd
为什么要Test input : asd在之后打印asd?
在的代码示例http://learnyouahaskell.com/,它使用putStr,所述getLine的呈现输出比我的不同.当我使用putStrLn该程序按预期工作(打印,然后提示,并打印).
它是一个错误ghc,还是它应该工作的方式?