像
这样的东西>> l1 <- getContents_fu
(this line is user input) dir/file.txt
>> putStrLn l1
These are the contents of 'file.txt'.
我认为类型签名可以是 String ,只要返回的字符串是file.txt的内容。
答案 0 :(得分:1)
正如评论中所述,getLine >>= readFile
执行此操作并且类型为IO String
。这是一个示例shell交互。
$ cat > file.txt
Hello from a file!
$ ghci
GHCi, version 8.0.2: http://www.haskell.org/ghc/ :? for help
ghci> contentsFromName = getLine >>= readFile
contentsFromName :: IO String
ghci > contentsFromName
file.txt
"Hello from a file!\n"