diff --git a/src/Network/Wai/Trans.hs b/src/Network/Wai/Trans.hs
--- a/src/Network/Wai/Trans.hs
+++ b/src/Network/Wai/Trans.hs
@@ -1,6 +1,7 @@
 {-# LANGUAGE
     FlexibleContexts
   , OverloadedStrings
+  , Rank2Types
   #-}
 
 -- |
@@ -23,6 +24,8 @@
   , MiddlewareT
   , liftApplication
   , liftMiddleware
+  , runApplicationT
+  , runMiddlewareT
   ) where
 
 
@@ -41,4 +44,10 @@
 
 liftMiddleware :: MonadIO m => (ApplicationT m -> Application) -> Middleware -> MiddlewareT m
 liftMiddleware runAppT mid app = liftApplication $ mid (runAppT app)
+
+runApplicationT :: (forall a. m a -> IO a) -> ApplicationT m -> Application
+runApplicationT run app req respond = run (app req respond)
+
+runMiddlewareT :: MonadIO m => (forall a. m a -> IO a) -> MiddlewareT m -> Middleware
+runMiddlewareT run mid app req respond = run (mid (liftApplication app) req respond)
 
diff --git a/wai-transformers.cabal b/wai-transformers.cabal
--- a/wai-transformers.cabal
+++ b/wai-transformers.cabal
@@ -1,5 +1,5 @@
 Name:                   wai-transformers
-Version:                0.0.1
+Version:                0.0.2
 Author:                 Athan Clark <athan.clark@gmail.com>
 Maintainer:             Athan Clark <athan.clark@gmail.com>
 License:                BSD3
