diff --git a/System/Console/Haskeline/Monads.hs b/System/Console/Haskeline/Monads.hs
index 04339713bba324f086b6384162fee8cc990f7b41..6668e967823017ab6dba91cadcd444733b35071a 100644
--- a/System/Console/Haskeline/Monads.hs
+++ b/System/Console/Haskeline/Monads.hs
@@ -2,7 +2,8 @@ module System.Console.Haskeline.Monads(
                 module System.Console.Haskeline.MonadException,
                 MonadTrans(..),
                 MonadIO(..),
-                ReaderT(..),
+                ReaderT,
+                runReaderT,
                 runReaderT',
                 mapReaderT,
                 asks,
@@ -15,7 +16,8 @@ module System.Console.Haskeline.Monads(
                 update,
                 MonadReader(..),
                 MonadState(..),
-                MaybeT(..),
+                MaybeT(MaybeT),
+                runMaybeT,
                 orElse
                 ) where
 
@@ -23,7 +25,7 @@ import Control.Applicative (Applicative(..))
 import Control.Monad (ap, liftM)
 import Control.Monad.IO.Class (MonadIO(..))
 import Control.Monad.Trans.Class (MonadTrans(..))
-import Control.Monad.Trans.Maybe (MaybeT(..))
+import Control.Monad.Trans.Maybe (MaybeT(MaybeT),runMaybeT)
 import Control.Monad.Trans.Reader hiding (ask,asks)
 import qualified Control.Monad.Trans.Reader as Reader
 import Data.IORef
diff --git a/haskeline.cabal b/haskeline.cabal
index 311979b8dde80d5b29972717312f2bafa3b91a00..c26768fc423255a115b3df4647bdef69cc8ae8c2 100644
--- a/haskeline.cabal
+++ b/haskeline.cabal
@@ -52,7 +52,7 @@ flag legacy-encoding
 Library
     Build-depends: base >=4.3 && < 4.8, containers>=0.4 && < 0.6,
                    directory>=1.1 && < 1.3, bytestring>=0.9 && < 0.11,
-                   filepath >= 1.2 && < 1.4, transformers >= 0.2 && < 0.4
+                   filepath >= 1.2 && < 1.4, transformers >= 0.2 && < 0.5
     Default-Language: Haskell98
     Default-Extensions: 
                 ForeignFunctionInterface, Rank2Types, FlexibleInstances,