Open StillerHarpo opened 2 years ago
Yeah, there's not a good way to fix this, short of removing the MonadCatch
instance altogether.
What's happening is that whenever you catch
something in Shell
the exception handler is catching all exceptions that will ever be raised by that Shell
, not just exceptions in the wrapped block.
I have the following code
I would expect that running this will not run the error handler (it will not print "exception). But runnig it prints it
Doing the same thing in the IO monad works as I expect
I'm on version 1.5.22