Exception Haskell:从Data.Binary.Get捕获异常
我有以下代码:Exception Haskell:从Data.Binary.Get捕获异常,exception,haskell,Exception,Haskell,我有以下代码: import Data.Binary.Get import qualified Data.ByteString.Lazy as L import qualified Control.Exception as E main = do let dat = L.pack [1,2,3,4] E.catch (E.evaluate $ runGet getWord32be dat) (\_ -> return 0) (return 1) putStrLn
import Data.Binary.Get
import qualified Data.ByteString.Lazy as L
import qualified Control.Exception as E
main = do
let dat = L.pack [1,2,3,4]
E.catch (E.evaluate $ runGet getWord32be dat) (\_ -> return 0) (return 1)
putStrLn "Done"
我得到以下错误:
Couldn't match expected type `m1 t -> m a'
against inferred type `IO GHC.Word.Word32'
In a stmt of a 'do' expression:
E.catch
(E.evaluate $ runGet getWord32be dat) (\ _ -> return 0) (return 1)
但我不知道错配是什么。有人能开导吗?Catch只需要两个参数。你给了它三个参数。Catch只接受两个参数。你给它三个