Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- class Monad m => ModalMonad m where
- splitM :: m a -> m (m a)
- class Monad m => NegatableMonad m where
- negateM :: m a -> m a
- class Monad m => KnowledgeMonad m where
- knownM :: m a -> a
- newtype AdjM f g a = AdjM {
- runAdjM :: g (f a)
- appM2 :: Monad m => (a -> b -> m c) -> m a -> m b -> m c
- appM3 :: Monad m => (a -> b -> c -> m d) -> m a -> m b -> m c -> m d
- (<=<) :: Monad m => (b -> m c) -> (a -> m b) -> a -> m c
- fromMaybeM :: MonadFail m => Maybe a -> m a
- bind2 :: Monad m => m (m a) -> (a -> m b) -> m b
- join3 :: Monad m => m (m (m b)) -> m b
- reduceM :: Monad m => m (a -> m b) -> a -> m b
- mapK :: Monad m => m (a -> m b) -> m a -> m b
Documentation
class Monad m => ModalMonad m where Source #
Instances
Monoid a => ModalMonad ((->) a) Source # | |
Defined in Math.Tools.Monad |
class Monad m => KnowledgeMonad m where Source #
Instances
Monoid a => KnowledgeMonad ((->) a) Source # | |
Defined in Math.Tools.Monad |
Instances
(Applicative f, Applicative g) => Applicative (AdjM f g) Source # | |
(Functor f, Functor g) => Functor (AdjM f g) Source # | |
(Adjunction f g, Applicative f, Applicative g) => Monad (AdjM f g) Source # | |
Adjunction g f => Comonad (AdjM f g) Source # | |
(<=<) :: Monad m => (b -> m c) -> (a -> m b) -> a -> m c Source #
type from tweet by Chris Martin, but well known.
fromMaybeM :: MonadFail m => Maybe a -> m a Source #