Essentially the Maybe type with error messages. https://github.com/

LTS Haskell 9.5:
Stackage Nightly 2017-09-20:
Latest on Hackage:
BSD2 licensed by Peter Harpending
Maintained by peter@harpending.org

Module documentation for


This is a Haskell library that exists to house a type:

data Exceptional x
  = Failure String
  | Success x

It's much like Maybe, except instead of Nothing, we have Failure String.

A comparison could also be made to Either String. I made this library because I was dissatisfied with the Monad instance for Either. In this type, fail = Failure. It's rather simple.


cabal install exceptional

Or, add exceptional to the build-depends field in your .cabal file.

Depends on:
Used by 1 package:
comments powered byDisqus