Proposal: merge either into transformers

Roman Cheplyaka roma at ro-che.info
Thu Apr 24 15:14:48 UTC 2014


* Vincent Hanquez <tab at snarc.org> [2014-04-24 15:45:34+0100]
> On 2012-12-07 09:44, Roman Cheplyaka wrote:
> >I propose to add the sole module of the 'either' package[1],
> >Control.Monad.Trans.Either, to the transformers package.
> >
> >It provides EitherT, a very basic and fundamental data type. The
> >difference between EitherT and ErrorT is that the latter has an Error
> >constraint, which is used to imlement 'fail'.
> >
> >Note that 'either' depends on the 'semigroupoids' and 'semigroup'
> >packages to provide appropriate instances. The proposal is not to add
> >those instances to 'transformers' to avoid additional dependencies. The
> >instances can then be left in the 'either' package or moved to the
> >'semigroupoids' and 'semigroup' packages respectively. ('semigroupoids'
> >already depends on 'transformers', while 'semigroups' does not).
> >
> >Compared to the 'either' package, Show, Read, Eq and Ord instances will
> >be dropped to keep the code Haskell2010 (those instances require
> >FlexibleInstances, FlexibleContexts, and UndecidableInstances).
> >
> >The patch is attached. [*]
> >
> >[*] against transformers-0.3.0.0, because the darcs version is not
> >buildable (Control/Monad/Signatures.hs is not in the repository).
> >
> 
> [Sorry to revive this 1 yr 1/2 thread, but I was looking at the reason why
> we don't have eitherT is a more canonical place like transformers,
> and ended up here ...]
> 
> Is there a reason why this thread ran out of steam ? It not totally obvious
> from the answers what was missing to move forward.
> It seems like there's general agreement that EitherT is a good addition, did
> this proposal got forgotten ? Is there a way to revive this proposal ?

IIRC, last time this was brought up, Ross said that he'd take action after GHC
7.8 is released. So your reminder is well timed, in fact ;)

Roman
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://www.haskell.org/pipermail/libraries/attachments/20140424/c7275756/attachment.sig>


More information about the Libraries mailing list