Applicative programming with effects

November 2005Applicative programming with effectsApplicative programming with effects

This paperThe paper was published in the Journal of Functional Programming in January 2008, but we give an earlier date here as it seems to have been circulated much earlier. introduces applicative functors. Its definitions for Applicative and Traversable classes closely resemble what will soon appear in GHC 6.6.

In its discussion of how Applicative differs from Monad, it includes an example of an Either-like type that can be used to sequence the results of multi-step computation and produce a list of all of the errors (not merely the first) if multiple steps fail. We commonly know this type today as Validation.

Authors: Conor McBride and Ross Paterson

Join Type Classes for courses and projects to get you started and make you an expert in FP with Haskell.