Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Documentation
Instances
Covariant t => Covariant (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free (<$>) :: (a -> b) -> Free t a -> Free t b Source # comap :: (a -> b) -> Free t a -> Free t b Source # (<$) :: a -> Free t b -> Free t a Source # ($>) :: Free t a -> b -> Free t b Source # void :: Free t a -> Free t () Source # loeb :: Free t (Free t a -> a) -> Free t a Source # (<&>) :: Free t a -> (a -> b) -> Free t b Source # (<$$>) :: Covariant u => (a -> b) -> ((Free t :. u) > a) -> (Free t :. u) > b Source # (<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> ((Free t :. (u :. v)) > a) -> (Free t :. (u :. v)) > b Source # (<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> ((Free t :. (u :. (v :. w))) > a) -> (Free t :. (u :. (v :. w))) > b Source # (<&&>) :: Covariant u => ((Free t :. u) > a) -> (a -> b) -> (Free t :. u) > b Source # (<&&&>) :: (Covariant u, Covariant v) => ((Free t :. (u :. v)) > a) -> (a -> b) -> (Free t :. (u :. v)) > b Source # (<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Free t :. (u :. (v :. w))) > a) -> (a -> b) -> (Free t :. (u :. (v :. w))) > b Source # | |
Covariant t => Bindable (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free (>>=) :: Free t a -> (a -> Free t b) -> Free t b Source # (=<<) :: (a -> Free t b) -> Free t a -> Free t b Source # bind :: (a -> Free t b) -> Free t a -> Free t b Source # join :: ((Free t :. Free t) > a) -> Free t a Source # (>=>) :: (a -> Free t b) -> (b -> Free t c) -> a -> Free t c Source # (<=<) :: (b -> Free t c) -> (a -> Free t b) -> a -> Free t c Source # | |
Covariant t => Applicative (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free (<*>) :: Free t (a -> b) -> Free t a -> Free t b Source # apply :: Free t (a -> b) -> Free t a -> Free t b Source # (*>) :: Free t a -> Free t b -> Free t b Source # (<*) :: Free t a -> Free t b -> Free t a Source # forever :: Free t a -> Free t b Source # (<**>) :: Applicative u => ((Free t :. u) > (a -> b)) -> ((Free t :. u) > a) -> (Free t :. u) > b Source # (<***>) :: (Applicative u, Applicative v) => ((Free t :. (u :. v)) > (a -> b)) -> ((Free t :. (u :. v)) > a) -> (Free t :. (u :. v)) > b Source # (<****>) :: (Applicative u, Applicative v, Applicative w) => ((Free t :. (u :. (v :. w))) > (a -> b)) -> ((Free t :. (u :. (v :. w))) > a) -> (Free t :. (u :. (v :. w))) > b Source # | |
Alternative t => Alternative (Free t) Source # | |
Avoidable t => Avoidable (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free | |
Covariant t => Pointable (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free | |
Traversable t => Traversable (Free t) Source # | |
Defined in Pandora.Paradigm.Basis.Free (->>) :: (Pointable u, Applicative u) => Free t a -> (a -> u b) -> (u :. Free t) > b Source # traverse :: (Pointable u, Applicative u) => (a -> u b) -> Free t a -> (u :. Free t) > b Source # sequence :: (Pointable u, Applicative u) => (Free t :. u) a -> (u :. Free t) > a Source # (->>>) :: (Pointable u, Applicative u, Traversable v) => ((v :. Free t) > a) -> (a -> u b) -> (u :. (v :. Free t)) > b Source # (->>>>) :: (Pointable u, Applicative u, Traversable v, Traversable w) => ((w :. (v :. Free t)) > a) -> (a -> u b) -> (u :. (w :. (v :. Free t))) > b Source # (->>>>>) :: (Pointable u, Applicative u, Traversable v, Traversable w, Traversable j) => ((j :. (w :. (v :. Free t))) > a) -> (a -> u b) -> (u :. (j :. (w :. (v :. Free t)))) > b Source # |