Haskell 中的参数 hGetContents 无效

tim*_*117 3 haskell ghci

我正在尝试对整数列表进行排序并将其打印出来,但收到此异常:

Exception: <stdin>: hGetContents: invalid argument (Bad file descriptor)
Run Code Online (Sandbox Code Playgroud)

该程序:

import Data.List

main :: IO ()
main = do
    interact maxTri
    putStrLn ""

readInt :: String -> Int
readInt = read

maxTri :: String -> String
maxTri = show .
    sort .
    map readInt .
    words
Run Code Online (Sandbox Code Playgroud)

Dan*_*ner 5

interact(半)关闭输入流。如果您在 ghci 中,这效果不佳,因为 ghci 期望继续使用输入流。

编译并运行你的程序

ghc path.hs
path
Run Code Online (Sandbox Code Playgroud)

并且这个问题不应该出现。