私は haskell IO を理解しようとしていますが、stdin のこの機能は最終的に私を混乱させます: たとえば、getContents のような関数を使用しようとすると:
let main = do x<-getContents; putStrLn x
次のエラーが表示されます。
hGetContents: illegal operation (handle is closed)
これでIOを行うにはどうすればよいですか?修正はありますか、それとも別のアナログ IO 関数を探す必要がありますか?