Open
Description
I could remove the MonadFail
instance from Checked
, but MonadPlus
and Alternative
are unfortunate to remove. Really, the problem isn't these type classes. The problem is that IO
throws exceptions in the instances for these type classes.
So maybe for IO
, I should make a newtype. If you use IO
directly, then the warning is merely not to call mzero
or fail
. But if you use the newtype I provide for IO
, then you're safer, because I won't expose exception-throwing instances for any type classes.
Metadata
Assignees
Labels
No labels
Activity