MonadFail proposal (MFP): Moving fail out of Monad

Roman Cheplyaka roma at
Wed Jun 10 11:46:34 UTC 2015

On 10/06/15 14:22, Johan Tibell wrote:
> On Wed, Jun 10, 2015 at 12:42 AM, David Luposchainsky
> <dluposchainsky at <mailto:dluposchainsky at>>
> wrote:
>     I think there are two important consequences of MonadFail. First of
>     all, we can
>     all safely write failable patterns if we so desire. Second, the
>     compiler can
>     ensure other people's codebases do not lie to us (knowingly or
>     unknowingly).
> The second is a bit overstated I think. Any function you call can still
> have partial pattern matches in all the other places Haskell allows them
> and you wouldn't know from the type.

For most of them, at least you get a warning from GHC (not for patterns
inside lambda, sadly, although that should be fixable). But for

  Just x <- a

it's not possible in principle to give a warning, because it's not clear
whether the implicit call to fail is intended.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <>

More information about the ghc-devs mailing list