我需要帮助来理解三个Haskell函数的用法
Control.Exception.try :: Exception e => IO a -> IO (Either e a))Control.Exception.catch :: Exception e => IO a -> (e -> IO a) -> IO a)Control.Exception.handle :: Exception e => (e -> IO a) -> IO a -> IO a)我需要知道几件事:
我会写下我的试验,希望你能帮助我:
尝试
我有一个例子:
x = 5 `div` 0
test = try (print x) :: IO (Either SomeException ())
Run Code Online (Sandbox Code Playgroud)
我有两个问题:
如何设置自定义错误输出?
我该怎么做才能将所有错误都设置为SomeException,所以我不必编写 :: IO (Either SomeException())
捕获/试
你能给我看一个自定义错误输出的简短例子吗?