Safe Haskell | Safe |
---|---|
Language | GHC2021 |
Control.XFreer.Join
Documentation
XFree
is the freer indexed monad that wraps an (algebraic, non-composable) effect
to provide Functor
, XApplicative
and XMonad
(indexed applicative and monad) for free.
Instances
(forall (p' :: k) (q' :: k). Functor (f p' q')) => XApplicative (XFree f :: k -> k -> Type -> Type) # | |
Defined in Control.XFreer.Join Methods xpure :: forall a (p :: k0). a -> XFree f p p a # (<*>:) :: forall (p :: k0) (q :: k0) a b (r :: k0). XFree f p q (a -> b) -> XFree f q r a -> XFree f p r b # xliftA2 :: forall a b c (p :: k0) (q :: k0) (r :: k0). (a -> b -> c) -> XFree f p q a -> XFree f q r b -> XFree f p r c # (*>:) :: forall (p :: k0) (q :: k0) a (r :: k0) b. XFree f p q a -> XFree f q r b -> XFree f p r b # (<*:) :: forall (p :: k0) (q :: k0) a (r :: k0) b. XFree f p q a -> XFree f q r b -> XFree f p r a # | |
(forall (p' :: k) (q' :: k). Functor (f p' q')) => XMonad (XFree f :: k -> k -> Type -> Type) # | |
(forall (p' :: k) (q' :: k). Functor (f p' q'), p ~ q) => Applicative (XFree f p q) # |
|
Defined in Control.XFreer.Join | |
(forall (p' :: k) (q' :: k). Functor (f p' q')) => Functor (XFree f p q) # | |
(forall (p' :: k) (q' :: k). Functor (f p' q'), p ~ q) => Monad (XFree f p q) # |
|