The MaybeT monad transformer extends a monad with the ability to exit the computation without returning a value. A sequence of actions produces a value only. Clean Alternatives with MaybeT. 18 Nov Haskell's abstraction facilities are awesome. Functor, Applicative, and Monad are all great, and Maybe is a pretty. MaybeT . return:: (Monad m) => Maybe a -> MaybeT m a. I think it's a shame it doesn't have a standard name. A more general form is liftMaybe.