diff --git a/Control/Monad/Maybe.hs b/Control/Monad/Maybe.hs
--- a/Control/Monad/Maybe.hs
+++ b/Control/Monad/Maybe.hs
@@ -31,6 +31,7 @@
   -- $MaybeExample
   ) where
 
+import Control.Applicative
 import Control.Monad()
 import Control.Monad.Trans()
 import Control.Monad.Cont
@@ -44,6 +45,10 @@
 
 instance (Functor m) => Functor (MaybeT m) where
   fmap f = MaybeT . fmap (fmap f) . runMaybeT
+
+instance Applicative m => Applicative (MaybeT m) where
+  pure = MaybeT . pure . Just
+  MaybeT f <*> MaybeT x = MaybeT $ liftA2 (<*>) f x
 
 instance (Monad m) => Monad (MaybeT m) where
   fail _ = MaybeT (return Nothing)
diff --git a/MaybeT-monads-tf.cabal b/MaybeT-monads-tf.cabal
--- a/MaybeT-monads-tf.cabal
+++ b/MaybeT-monads-tf.cabal
@@ -1,7 +1,7 @@
 Cabal-Version: >= 1.6
 
 Name:     MaybeT-monads-tf
-Version:  0.1
+Version:  0.2
 Category: Control
 Synopsis: MaybeT monad transformer compatible with monads-tf instead of mtl
 
