explicit-sharing-0.2: Explicit Sharing of Monadic Effects

Control.Monad.Sharing.Lazy.ContReaderNoThunksInlined

Documentation

newtype Lazy m a Source

Constructors

Lazy 

Fields

fromLazy :: forall w. (a -> Bool -> Store -> m w) -> Bool -> Store -> m w
 

Instances

Monad m => Monad (Lazy m) 
MonadPlus m => MonadPlus (Lazy m) 
MonadPlus m => Sharing (Lazy m) 

data Store Source

Constructors

Store Int (IntMap Untyped) 

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

memo :: Lazy m a -> Lazy m (Lazy m a)Source