MonadFail proposal (MFP): Moving fail out of Monad

Roman Cheplyaka roma at ro-che.info
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 googlemail.com <mailto:dluposchainsky at googlemail.com>>
> 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

do
  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.

Roman

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20150610/1859e75c/attachment.sig>


More information about the ghc-devs mailing list