pandora-0.3.4: A box of patterns and paradigms
Safe HaskellSafe-Inferred
LanguageHaskell2010

Pandora.Paradigm.Primary.Functor.Delta

Documentation

data Delta a Source #

Constructors

a :^: a infixr 1 

Instances

Instances details
Covariant Delta Source # 
Instance details

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 #

Applicative Delta Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Delta

Methods

(<*>) :: 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 #

Distributive Delta Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Delta

Methods

(>>-) :: 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 #

Extendable Delta Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Delta

Methods

(=>>) :: Delta a -> (Delta a -> b) -> Delta b Source #

(<<=) :: (Delta a -> b) -> Delta a -> Delta b Source #

extend :: (Delta a -> b) -> Delta a -> Delta b Source #

duplicate :: Delta a -> (Delta :. Delta) := a Source #

(=<=) :: (Delta b -> c) -> (Delta a -> b) -> Delta a -> c Source #

(=>=) :: (Delta a -> b) -> (Delta b -> c) -> Delta a -> c Source #

($=>>) :: Covariant u => ((u :. Delta) := a) -> (Delta a -> b) -> (u :. Delta) := b Source #

(<<=$) :: Covariant u => ((u :. Delta) := a) -> (Delta a -> b) -> (u :. Delta) := b Source #

Pointable Delta Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Delta

Methods

point :: a |-> Delta Source #

Representable Delta Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Delta

Associated Types

type Representation Delta Source #

Traversable Delta Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Delta

Methods

(->>) :: (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 #

Extendable (Tap (Delta <:.> Stream)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stream

Methods

(=>>) :: Tap (Delta <:.> Stream) a -> (Tap (Delta <:.> Stream) a -> b) -> Tap (Delta <:.> Stream) b Source #

(<<=) :: (Tap (Delta <:.> Stream) a -> b) -> Tap (Delta <:.> Stream) a -> Tap (Delta <:.> Stream) b Source #

extend :: (Tap (Delta <:.> Stream) a -> b) -> Tap (Delta <:.> Stream) a -> Tap (Delta <:.> Stream) b Source #

duplicate :: Tap (Delta <:.> Stream) a -> (Tap (Delta <:.> Stream) :. Tap (Delta <:.> Stream)) := a Source #

(=<=) :: (Tap (Delta <:.> Stream) b -> c) -> (Tap (Delta <:.> Stream) a -> b) -> Tap (Delta <:.> Stream) a -> c Source #

(=>=) :: (Tap (Delta <:.> Stream) a -> b) -> (Tap (Delta <:.> Stream) b -> c) -> Tap (Delta <:.> Stream) a -> c Source #

($=>>) :: Covariant u => ((u :. Tap (Delta <:.> Stream)) := a) -> (Tap (Delta <:.> Stream) a -> b) -> (u :. Tap (Delta <:.> Stream)) := b Source #

(<<=$) :: Covariant u => ((u :. Tap (Delta <:.> Stream)) := a) -> (Tap (Delta <:.> Stream) a -> b) -> (u :. Tap (Delta <:.> Stream)) := b Source #

Extendable (Tap (Delta <:.> Stack)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

(=>>) :: Tap (Delta <:.> Stack) a -> (Tap (Delta <:.> Stack) a -> b) -> Tap (Delta <:.> Stack) b Source #

(<<=) :: (Tap (Delta <:.> Stack) a -> b) -> Tap (Delta <:.> Stack) a -> Tap (Delta <:.> Stack) b Source #

extend :: (Tap (Delta <:.> Stack) a -> b) -> Tap (Delta <:.> Stack) a -> Tap (Delta <:.> Stack) b Source #

duplicate :: Tap (Delta <:.> Stack) a -> (Tap (Delta <:.> Stack) :. Tap (Delta <:.> Stack)) := a Source #

(=<=) :: (Tap (Delta <:.> Stack) b -> c) -> (Tap (Delta <:.> Stack) a -> b) -> Tap (Delta <:.> Stack) a -> c Source #

(=>=) :: (Tap (Delta <:.> Stack) a -> b) -> (Tap (Delta <:.> Stack) b -> c) -> Tap (Delta <:.> Stack) a -> c Source #

($=>>) :: Covariant u => ((u :. Tap (Delta <:.> Stack)) := a) -> (Tap (Delta <:.> Stack) a -> b) -> (u :. Tap (Delta <:.> Stack)) := b Source #

(<<=$) :: Covariant u => ((u :. Tap (Delta <:.> Stack)) := a) -> (Tap (Delta <:.> Stack) a -> b) -> (u :. Tap (Delta <:.> Stack)) := b Source #

Semigroup a => Semigroup (Delta a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Delta

Methods

(+) :: Delta a -> Delta a -> Delta a Source #

Ringoid a => Ringoid (Delta a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Delta

Methods

(*) :: Delta a -> Delta a -> Delta a Source #

Setoid a => Setoid (Delta a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Delta

Methods

(==) :: Delta a -> Delta a -> Boolean Source #

(/=) :: Delta a -> Delta a -> Boolean Source #

Substructure ('Left :: Type -> Wye Type) Delta Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Substructural 'Left Delta a Source #

Substructure ('Right :: Type -> Wye Type) Delta Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Substructural 'Right Delta a Source #

Substructure ('Left :: Type -> Wye Type) (Delta <:.> t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Substructural 'Left (Delta <:.> t) a Source #

Substructure ('Right :: Type -> Wye Type) (Delta <:.> t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Substructural 'Right (Delta <:.> t) a Source #

Rotatable ('Right :: a -> Wye a) (Tap (Delta <:.> Stream)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stream

Associated Types

type Rotational 'Right (Tap (Delta <:.> Stream)) a Source #

Rotatable ('Left :: a -> Wye a) (Tap (Delta <:.> Stream)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stream

Associated Types

type Rotational 'Left (Tap (Delta <:.> Stream)) a Source #

Rotatable ('Right :: a -> Wye a) (Tap (Delta <:.> Construction Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Associated Types

type Rotational 'Right (Tap (Delta <:.> Construction Maybe)) a Source #

Rotatable ('Left :: a -> Wye a) (Tap (Delta <:.> Construction Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Associated Types

type Rotational 'Left (Tap (Delta <:.> Construction Maybe)) a Source #

Rotatable ('Right :: a -> Wye a) (Tap (Delta <:.> Stack)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Associated Types

type Rotational 'Right (Tap (Delta <:.> Stack)) a Source #

Rotatable ('Left :: a -> Wye a) (Tap (Delta <:.> Stack)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Associated Types

type Rotational 'Left (Tap (Delta <:.> Stack)) a Source #

type Representation Delta Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Delta

type Substructural ('Left :: Type -> Wye Type) Delta a Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Substructural ('Left :: Type -> Wye Type) Delta a = a
type Substructural ('Right :: Type -> Wye Type) Delta a Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Substructural ('Right :: Type -> Wye Type) Delta a = a
type Substructural ('Left :: Type -> Wye Type) (Delta <:.> t) a Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Substructural ('Left :: Type -> Wye Type) (Delta <:.> t) a = t a
type Substructural ('Right :: Type -> Wye Type) (Delta <:.> t) a Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Substructural ('Right :: Type -> Wye Type) (Delta <:.> t) a = t a
type Rotational ('Right :: a1 -> Wye a1) (Tap (Delta <:.> Stream)) a2 Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stream

type Rotational ('Right :: a1 -> Wye a1) (Tap (Delta <:.> Stream)) a2 = Tap (Delta <:.> Stream) a2
type Rotational ('Left :: a1 -> Wye a1) (Tap (Delta <:.> Stream)) a2 Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stream

type Rotational ('Left :: a1 -> Wye a1) (Tap (Delta <:.> Stream)) a2 = Tap (Delta <:.> Stream) a2
type Rotational ('Right :: a1 -> Wye a1) (Tap (Delta <:.> Construction Maybe)) a2 Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

type Rotational ('Left :: a1 -> Wye a1) (Tap (Delta <:.> Construction Maybe)) a2 Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

type Rotational ('Right :: a1 -> Wye a1) (Tap (Delta <:.> Stack)) a2 Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

type Rotational ('Right :: a1 -> Wye a1) (Tap (Delta <:.> Stack)) a2 = (Maybe :. Zipper Stack) := a2
type Rotational ('Left :: a1 -> Wye a1) (Tap (Delta <:.> Stack)) a2 Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

type Rotational ('Left :: a1 -> Wye a1) (Tap (Delta <:.> Stack)) a2 = (Maybe :. Zipper Stack) := a2