Safe Haskell | None |
---|
- module Algebra.Classes
- module Algebra.Applicative
- module Algebra.Core
- module Algebra.Traversable
- module Algebra.Lens
- newtype Kleisli m a b = Kleisli {
- runKleisli :: a -> m b
- _Kleisli :: Iso (Kleisli m a b) (Kleisli m' c d) (a -> m b) (c -> m' d)
- (=<<) :: Monad m => (a -> m b) -> m a -> m b
- joinMap :: Monad m => (a -> m b) -> m a -> m b
- (<=<) :: Monad m => (b -> m c) -> (a -> m b) -> a -> m c
- (>=>) :: Monad m => (a -> m b) -> (b -> m c) -> a -> m c
- (>>) :: Applicative f => f a -> f b -> f b
- (<*=) :: Monad m => m a -> (a -> m b) -> m a
- only :: (Monoid (m ()), Monad m) => (a -> Bool) -> m a -> m a
- return :: Unit f => a -> f a
- foldlM :: (Foldable t, Monad m) => (a -> b -> m a) -> a -> t b -> m a
- foldrM :: (Foldable t, Monad m) => (b -> a -> m a) -> t b -> a -> m a
- findM :: (Foldable t, Monad m) => (a -> m (Maybe b)) -> t a -> m (Maybe b)
- while :: Monad m => m Bool -> m ()
- until :: Monad m => m (Maybe a) -> m a
- bind2 :: Monad m => (a -> b -> m c) -> m a -> m b -> m c
- bind3 :: Monad m => (a -> b -> c -> m d) -> m a -> m b -> m c -> m d
- (>>>=) :: Monad m => (m a, m b) -> (a -> b -> m c) -> m c
- (>>>>=) :: Monad m => (m a, m b, m c) -> (a -> b -> c -> m d) -> m d
- newtype Compose' f g a = Compose' ((g :.: f) a)
- _Compose' :: Iso (Compose' f g a) (Compose' h i b) (g (f a)) (i (h b))
Documentation
module Algebra.Classes
module Algebra.Applicative
module Algebra.Core
module Algebra.Traversable
module Algebra.Lens
Monad utilities
Kleisli | |
|
(>>) :: Applicative f => f a -> f b -> f bSource
Instance utilities
Monad m => ConcreteMonad (Compose' m) | |
Monad m => MonadTrans (Compose' m) | |
(Unit f, Unit g) => Unit (Compose' f g) | |
(MonadFix g, Monad f, Traversable f) => MonadFix (Compose' f g) | |
(Monad f, Monad g, Traversable f) => Monad (Compose' f g) | |
(Applicative f, Applicative g) => Applicative (Compose' f g) | |
(Functor f, Functor g) => Functor (Compose' f g) | |
(Foldable f, Foldable g) => Foldable (Compose' f g) | |
(Traversable f, Traversable g) => Traversable (Compose' f g) | |
(Monoid (f a), Applicative g) => Monoid (Compose' f g a) | |
(Semigroup (f a), Applicative g) => Semigroup (Compose' f g a) |