Safe Haskell | None |
---|---|
Language | Haskell98 |
Control.Effect
Documentation
Specifies "parametric effect monads" which are essentially monads but annotated by a type-level monoid formed by |Plus m| and |Unit m| |
Associated Types
type Inv m f g :: Constraint Source
Methods
return :: a -> m (Unit m) a Source
Effect-parameterised version of return
. Annotated with the 'Unit m' effect,
denoting pure compuation |
(>>=) :: Inv m f g => m f a -> (a -> m g b) -> m (Plus m f g) b Source
Effect-parameterise version of >>=
(bind). Combines
two effect annotations f
and g
on its parameter computations into 'Plus m f g' |
(>>) :: Inv m f g => m f a -> m g b -> m (Plus m f g) b Source