所以我一直在搞乱Haskell,我在代码中遇到了这个奇怪的错误.
"'IO'不适用于足够的类型参数
预期种类'?',但'IO'有种' - > '
在'loop'的类型签名中:loop :: State - > IO"
这是守则
import System.IO
data State = State [Int] Int Int deriving (Show)
main = do
loop (State [] 0 0)
loop::State -> IO
loop state = do
putStr "file: "
f <- getLine
handle <- openFile f ReadMode
cde <- hGetContents handle
hClose handle
putStrLn cde
loop state
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个错误?此外,任何有关种类的见解将不胜感激.