pandora-0.3.0: A box of patterns and paradigms
Pandora.Paradigm.Primary.Functor.Delta
data Delta a Source #
Constructors
Defined in Pandora.Paradigm.Primary.Functor.Delta
Methods
(<$>) :: (a -> b) -> Delta a -> Delta b Source #
comap :: (a -> b) -> Delta a -> Delta b Source #
(<$) :: a -> Delta b -> Delta a Source #
($>) :: Delta a -> b -> Delta b Source #
void :: Delta a -> Delta () Source #
loeb :: Delta (a <-| Delta) -> Delta a Source #
(<&>) :: Delta a -> (a -> b) -> Delta b Source #
(<$$>) :: Covariant u => (a -> b) -> ((Delta :. u) := a) -> (Delta :. u) := b Source #
(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> ((Delta :. (u :. v)) := a) -> (Delta :. (u :. v)) := b Source #
(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> ((Delta :. (u :. (v :. w))) := a) -> (Delta :. (u :. (v :. w))) := b Source #
(<&&>) :: Covariant u => ((Delta :. u) := a) -> (a -> b) -> (Delta :. u) := b Source #
(<&&&>) :: (Covariant u, Covariant v) => ((Delta :. (u :. v)) := a) -> (a -> b) -> (Delta :. (u :. v)) := b Source #
(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Delta :. (u :. (v :. w))) := a) -> (a -> b) -> (Delta :. (u :. (v :. w))) := b Source #
(<*>) :: Delta (a -> b) -> Delta a -> Delta b Source #
apply :: Delta (a -> b) -> Delta a -> Delta b Source #
(*>) :: Delta a -> Delta b -> Delta b Source #
(<*) :: Delta a -> Delta b -> Delta a Source #
forever :: Delta a -> Delta b Source #
(<**>) :: Applicative u => ((Delta :. u) := (a -> b)) -> ((Delta :. u) := a) -> (Delta :. u) := b Source #
(<***>) :: (Applicative u, Applicative v) => ((Delta :. (u :. v)) := (a -> b)) -> ((Delta :. (u :. v)) := a) -> (Delta :. (u :. v)) := b Source #
(<****>) :: (Applicative u, Applicative v, Applicative w) => ((Delta :. (u :. (v :. w))) := (a -> b)) -> ((Delta :. (u :. (v :. w))) := a) -> (Delta :. (u :. (v :. w))) := b Source #
(>>-) :: Covariant u => u a -> (a -> Delta b) -> (Delta :. u) := b Source #
collect :: Covariant u => (a -> Delta b) -> u a -> (Delta :. u) := b Source #
distribute :: Covariant u => ((u :. Delta) := a) -> (Delta :. u) := a Source #
(>>>-) :: (Covariant u, Covariant v) => ((u :. v) := a) -> (a -> Delta b) -> (Delta :. (u :. v)) := b Source #
(>>>>-) :: (Covariant u, Covariant v, Covariant w) => ((u :. (v :. w)) := a) -> (a -> Delta b) -> (Delta :. (u :. (v :. w))) := b Source #
(>>>>>-) :: (Covariant u, Covariant v, Covariant w, Covariant j) => ((u :. (v :. (w :. j))) := a) -> (a -> Delta b) -> (Delta :. (u :. (v :. (w :. j)))) := b Source #
point :: a |-> Delta Source #
Associated Types
type Representation Delta :: Type Source #
(<#>) :: Representation Delta -> a <-| Delta Source #
tabulate :: (Representation Delta -> a) -> Delta a Source #
index :: Delta a -> Representation Delta -> a Source #
(->>) :: (Pointable u, Applicative u) => Delta a -> (a -> u b) -> (u :. Delta) := b Source #
traverse :: (Pointable u, Applicative u) => (a -> u b) -> Delta a -> (u :. Delta) := b Source #
sequence :: (Pointable u, Applicative u) => ((Delta :. u) := a) -> (u :. Delta) := a Source #
(->>>) :: (Pointable u, Applicative u, Traversable v) => ((v :. Delta) := a) -> (a -> u b) -> (u :. (v :. Delta)) := b Source #
(->>>>) :: (Pointable u, Applicative u, Traversable v, Traversable w) => ((w :. (v :. Delta)) := a) -> (a -> u b) -> (u :. (w :. (v :. Delta))) := b Source #
(->>>>>) :: (Pointable u, Applicative u, Traversable v, Traversable w, Traversable j) => ((j :. (w :. (v :. Delta))) := a) -> (a -> u b) -> (u :. (j :. (w :. (v :. Delta)))) := b Source #
(+) :: Delta a -> Delta a -> Delta a Source #
(*) :: Delta a -> Delta a -> Delta a Source #
(==) :: Delta a -> Delta a -> Boolean Source #
(/=) :: Delta a -> Delta a -> Boolean Source #
Defined in Pandora.Paradigm.Structure.Stack
(<$>) :: (a -> b) -> (Delta <:.> Stack) a -> (Delta <:.> Stack) b Source #
comap :: (a -> b) -> (Delta <:.> Stack) a -> (Delta <:.> Stack) b Source #
(<$) :: a -> (Delta <:.> Stack) b -> (Delta <:.> Stack) a Source #
($>) :: (Delta <:.> Stack) a -> b -> (Delta <:.> Stack) b Source #
void :: (Delta <:.> Stack) a -> (Delta <:.> Stack) () Source #
loeb :: (Delta <:.> Stack) (a <-| (Delta <:.> Stack)) -> (Delta <:.> Stack) a Source #
(<&>) :: (Delta <:.> Stack) a -> (a -> b) -> (Delta <:.> Stack) b Source #
(<$$>) :: Covariant u => (a -> b) -> (((Delta <:.> Stack) :. u) := a) -> ((Delta <:.> Stack) :. u) := b Source #
(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> (((Delta <:.> Stack) :. (u :. v)) := a) -> ((Delta <:.> Stack) :. (u :. v)) := b Source #
(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> (((Delta <:.> Stack) :. (u :. (v :. w))) := a) -> ((Delta <:.> Stack) :. (u :. (v :. w))) := b Source #
(<&&>) :: Covariant u => (((Delta <:.> Stack) :. u) := a) -> (a -> b) -> ((Delta <:.> Stack) :. u) := b Source #
(<&&&>) :: (Covariant u, Covariant v) => (((Delta <:.> Stack) :. (u :. v)) := a) -> (a -> b) -> ((Delta <:.> Stack) :. (u :. v)) := b Source #
(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => (((Delta <:.> Stack) :. (u :. (v :. w))) := a) -> (a -> b) -> ((Delta <:.> Stack) :. (u :. (v :. w))) := b Source #