|Portability||non-portable (multi-param classes, functional dependencies)|
This module is inspired by the paper
/Functional Programming with Overloading and
Mark P Jones (http://www.cse.ogi.edu/~mpj/)
Advanced School of Functional Programming, 1995.
get returns the state from the internals of the monad.
put replaces the state inside the monad.
Monadic state transformer.
Maps an old state to a new state inside a state monad.
The old state is thrown away.
Main> :t modify ((+1) :: Int -> Int)
modify (...) :: (MonadState Int a) => a ()
This says that modify (+1) acts over any
Monad that is a member of the MonadState class,
with an Int state.
|Gets specific component of the state, using a projection function
|Produced by Haddock version 0.8|