[GHC] #12160: MonadFail instance for (Either String)?
GHC
ghc-devs at haskell.org
Mon Jun 6 21:14:40 UTC 2016
#12160: MonadFail instance for (Either String)?
-------------------------------------+-------------------------------------
Reporter: lexi.lambda | Owner:
Type: feature | Status: new
request |
Priority: normal | Milestone:
Component: libraries | Version: 8.0.1
(other) |
Keywords: | Operating System: Unknown/Multiple
Architecture: | Type of failure: None/Unknown
Unknown/Multiple |
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
I think one of the cool things about breaking out `MonadFail` would be the
opportunity to introduce an instance for `Either String`, which isn’t
possible to do with plain `Monad` without overlapping instances. The
instance itself would be completely trivial:
{{{#!hs
instance MonadFail (Either String) where
fail = Left
}}}
The only possible reason to ''not'' do this, as far as I can tell, would
be because it requires `FlexibleInstances`. This already seems to be used
for a few instances in `base`, and it seems like it would be extremely
useful, so I would really appreciate if such an instance was defined. I’d
be happy to submit a patch to add it, but I wasn’t sure if this would be
an uncontroversial change or not.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12160>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list