explicit-sharing-0.2: Explicit Sharing of Monadic Effects

Control.Monad.Sharing.Lazy.Simple

Documentation

newtype Lazy m a Source

Constructors

Lazy 

Fields

fromLazy :: WriterT Shared (StateT ThunkStore m) a
 

Instances

Monad m => MonadState ThunkStore (Lazy m) 
Monad m => MonadWriter Shared (Lazy m) 
Monad m => Monad (Lazy m) 
MonadPlus m => MonadPlus (Lazy m) 
MonadPlus m => Sharing (Lazy m) 

runLazy :: Monad m => Lazy m a -> m aSource