--
-- Maintainer : libraries@haskell.org
-- Stability : experimental
--- Portability : non-portable ( mulit-param classes, functional dependencies )
+-- Portability : non-portable (multi-param classes, functional dependencies)
--
-- Declaration of the MonadRWS class.
--
-- Inspired by the paper
-- /Functional Programming with Overloading and
-- Higher-Order Polymorphism/,
--- Mark P Jones (<http://www.cse.ogi.edu/~mpj>)
+-- Mark P Jones (<http://www.cse.ogi.edu/~mpj/>)
-- Advanced School of Functional Programming, 1995.
-----------------------------------------------------------------------------
execRWST,
mapRWST,
withRWST,
- module Control.Monad,
- module Control.Monad.Fix,
- module Control.Monad.Trans,
module Control.Monad.Reader,
module Control.Monad.Writer,
module Control.Monad.State,
import Prelude
import Control.Monad
-import Control.Monad.Monoid
import Control.Monad.Fix
import Control.Monad.Trans
import Control.Monad.Reader
import Control.Monad.Writer
import Control.Monad.State
-
+import Data.Monoid
newtype RWS r w s a = RWS { runRWS :: r -> s -> (a, s, w) }