Several data-types like Either but with differing properties and type-class instances.
Library support is provided for those different representations, include
lens-related functions for converting between each and abstracting over their
similarities.
Download from hackage.
- 
ValidationThe
Validationdata type is isomorphic toEither, but has an instance ofApplicativethat accumulates on the error side. That is to say, if two (or more) errors are encountered, they are appended using aSemigroupoperation.As a consequence of this
Applicativeinstance, there is no correspondingBindorMonadinstance.Validationis an example of, "An applicative functor that is not a monad." 
