[Haskell-cafe] Call for comments: neither package

Michael Snoyman michael at snoyman.com
Mon Jun 28 18:51:15 EDT 2010


Hi all,

I'll admit, the original idea for this package was something to place in
ACME ;). However, it's goal is to solve a real problem: the lack of good
instances on the Either type. As a brief summary, Either has no Applicative
or Monad instances in the base library, has 2 reasonable definitions for
Applicative, and there are conflicting orphan instances in the mtl and
transformers packages. Also, the ErrorT transformer in those two packages
introduces a superclass constraint many people would like to avoid.

neither supplies three datatypes: AEither, MEither and MEitherT. AEither
provides the Monoid version of the Applicative instance, MEither is the
monadic version, and MEitherT is a monad transformer. The package provides
instances for both the transformers and mtl libraries for MonadTrans,
MonadIO and MonadCatchIO.

The code is up on github[1], let me know what you think.

Michael

[1] http://github.com/snoyberg/neither
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20100628/4a668b8e/attachment.html


More information about the Haskell-Cafe mailing list