------------------------------------------------------------------------------- |-- Module : Control.Monad.Writer.Lazy-- Copyright : (c) Andy Gill 2001,-- (c) Oregon Graduate Institute of Science and Technology, 2001-- License : BSD-style (see the file LICENSE)---- Maintainer : libraries@haskell.org-- Stability : experimental-- Portability : non-portable (multi-param classes, functional dependencies)---- Lazy writer monads.---- Inspired by the paper-- /Functional Programming with Overloading and Higher-Order Polymorphism/,-- Mark P Jones (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>)-- Advanced School of Functional Programming, 1995.-----------------------------------------------------------------------------moduleControl.Monad.Writer.Lazy(-- * MonadWriter classMonadWriter (..),listens ,censor ,-- * The Writer monadWriter,runWriter,execWriter,mapWriter,-- * The WriterT monad transformerWriterT(WriterT),runWriterT,execWriterT,mapWriterT,moduleControl.Monad,moduleControl.Monad.Fix,moduleControl.Monad.Trans,moduleData.Monoid,)whereimportControl.Monad.Writer.Class importControl.Monad.Trans importControl.Monad.Trans.Writer.Lazy(Writer,runWriter,execWriter,mapWriter,WriterT(WriterT),runWriterT,execWriterT,mapWriterT)importControl.MonadimportControl.Monad.FiximportData.Monoid