Maybe value. Using the Maybe applicative for type a allows one to operate on values of type a with the error being handled automatically by the applicative machinery. For example, to add and , one needs only write (+) <$> m <*> n For the non-error case, adding and gives . If either of or is , then the result will be also. This example also demonstrates how applicatives allow a sort of generalized function application. See also Functor Monad References External links Description of the Applicative typeclass in the Haskell docs Definition of the Applicative typeclass in the Glasgow Haskell Prelude Programming idioms Functional programming Software design patterns