writer package:writer-cps-transformers

Construct a writer computation from a (result, output) pair.
Construct a writer computation from a (result, output) pair. (The inverse of runWriter.)
A writer monad parameterized by the type w of output to accumulate. The return function produces the output mempty, while >>= combines the outputs of the subcomputations using mappend.
WriteT and RWST monad transformers The WriterT and RWST monad transformers provided by writer-cps-transformers are written in continuation passing style and avoid the space-leak problem of the traditional Control.Monad.Trans.Writer.Strict and Control.Monad.Trans.Writer.Lazy. The corresponding MTL class instances are in the package writer-cps-mtl (http://hackage.haskell.org/package/writer-cps-mtl).
The WriterT constructor is deliberately not exported in the CPS module to avoid exposing the hidden state w. writerT provides a safe way to construct a WriterT with the same api as the original WriterT.
A writer monad parameterized by:
  • w - the output to accumulate.
  • m - The inner monad.
The return function produces the output mempty, while >>= combines the outputs of the subcomputations using mappend.
A writer monad parameterized by:
  • w - the output to accumulate.
  • m - The inner monad.
The return function produces the output mempty, while >>= combines the outputs of the subcomputations using mappend.
Extract the output from a writer computation.
Extract the output from a writer computation.
Map both the return value and output of a computation using the given function.
Map both the return value and output of a computation using the given function.
Unwrap a writer computation as a (result, output) pair. (The inverse of writer.)
Unwrap a writer computation.