objective-0.0.2: Extensible objects
Control.Monad.Objective.Class
class Monad m => MonadObjective s m where Source
Associated Types
type Base m :: * -> * Source
data Control s e Source
Methods
(.-) :: Control s e -> e a -> m a infix 3 Source
Send a message to the pointed one.
invoke :: Object e (Base m) -> m (Control s e) Source
Add an object to the environment.
(.&) :: (MonadObjective k m, Stateful s e) => Control k e -> StateT s m a -> m a infix 3 Source