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

Pandora.Paradigm.Primary.Algebraic.Product

Documentation

data s :*: a infixr 0 Source #

Constructors

s :*: a infixr 0 

Instances

Instances details
Monotonic a (Vector r a) => Monotonic a (Vector (a :*: r) a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Linear.Vector

Methods

reduce :: (a -> r0 -> r0) -> r0 -> Vector (a :*: r) a -> r0 Source #

resolve :: (a -> r0) -> r0 -> Vector (a :*: r) a -> r0 Source #

Monotonic s a => Monotonic s (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Methods

reduce :: (s -> r -> r) -> r -> (s :*: a) -> r Source #

resolve :: (s -> r) -> r -> (s :*: a) -> r Source #

Accessible b a => Accessible b (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Methods

access :: Lens Identity (s :*: a) b Source #

Accessible a (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Methods

access :: Lens Identity (s :*: a) a Source #

Accessible s (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Methods

access :: Lens Identity (s :*: a) s Source #

Vectorize a r => Vectorize a (a :*: r) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Linear.Vector

Methods

vectorize :: (a :*: r) -> Vector (a :*: r) a Source #

Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) Identity Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Identity

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) <-- Identity a Source #

Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) ((:*:) s) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) <-- (s :*: a) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal (<--) (:*:) (:*:) t) => Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Construction t) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Construction

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) <-- Construction t a Source #

Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Store s) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Store

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) <-- Store s a Source #

Semimonoidal (<--) (:*:) (:*:) t => Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Tap t) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) <-- Tap t a Source #

Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Flip (:*:) a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a0) <-- Flip (:*:) a a0 Source #

Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Tagged tag) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Tagged

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) <-- Tagged tag a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) t) => Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Backwards t) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Backwards

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) <-- Backwards t a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) t) => Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Reverse t) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Reverse

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) <-- Reverse t a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Semimonoidal (<--) (:*:) (:*:) t, Semimonoidal (<--) (:*:) (:*:) t', Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) u, Adjoint ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t t') => Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) ((t <:<.>:> t') := u) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TUT

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) <-- ((t <:<.>:> t') := u) a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) t, Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) u) => Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) (t <.:> u) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.UT

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) <-- (t <.:> u) a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) t, Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) u) => Monoidal (<--) ((->) :: Type -> Type -> Type) (:*:) (:*:) (t <:.> u) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TU

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) <-- (t <:.> u) a Source #

Semimonoidal (<--) (:*:) (:*:) Wye Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Wye

Methods

multiply :: forall (a :: k) (b :: k). (Wye a :*: Wye b) <-- Wye (a :*: b) Source #

Semimonoidal (<--) (:*:) (:*:) Identity Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Identity

Methods

multiply :: forall (a :: k) (b :: k). (Identity a :*: Identity b) <-- Identity (a :*: b) Source #

Semimonoidal (<--) (:*:) (:*:) Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Maybe

Methods

multiply :: forall (a :: k) (b :: k). (Maybe a :*: Maybe b) <-- Maybe (a :*: b) Source #

Semimonoidal (<--) (:*:) (:*:) ((:*:) s :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

Methods

multiply :: forall (a :: k) (b :: k). ((s :*: a) :*: (s :*: b)) <-- (s :*: (a :*: b)) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal (<--) (:*:) (:*:) t) => Semimonoidal (<--) (:*:) (:*:) (Construction t :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Construction

Methods

multiply :: forall (a :: k) (b :: k). (Construction t a :*: Construction t b) <-- Construction t (a :*: b) Source #

Semimonoidal (<--) (:*:) (:*:) (Store s :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Store

Methods

multiply :: forall (a :: k) (b :: k). (Store s a :*: Store s b) <-- Store s (a :*: b) Source #

Semimonoidal (<--) (:*:) (:*:) t => Semimonoidal (<--) (:*:) (:*:) (Tap t :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

Methods

multiply :: forall (a :: k) (b :: k). (Tap t a :*: Tap t b) <-- Tap t (a :*: b) Source #

Semimonoidal (<--) (:*:) (:*:) (Flip (:*:) a :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

Methods

multiply :: forall (a0 :: k) (b :: k). (Flip (:*:) a a0 :*: Flip (:*:) a b) <-- Flip (:*:) a (a0 :*: b) Source #

Semimonoidal (<--) (:*:) (:*:) (Tagged tag :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Tagged

Methods

multiply :: forall (a :: k) (b :: k). (Tagged tag a :*: Tagged tag b) <-- Tagged tag (a :*: b) Source #

(Semimonoidal (<--) (:*:) (:*:) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t) => Semimonoidal (<--) (:*:) (:*:) (Backwards t :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Backwards

Methods

multiply :: forall (a :: k) (b :: k). (Backwards t a :*: Backwards t b) <-- Backwards t (a :*: b) Source #

(Semimonoidal (<--) (:*:) (:*:) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t) => Semimonoidal (<--) (:*:) (:*:) (Reverse t :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Reverse

Methods

multiply :: forall (a :: k) (b :: k). (Reverse t a :*: Reverse t b) <-- Reverse t (a :*: b) Source #

Semimonoidal (<--) (:*:) (:*:) ((->) e :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

Methods

multiply :: forall (a :: k) (b :: k). ((e -> a) :*: (e -> b)) <-- (e -> (a :*: b)) Source #

(Semimonoidal (<--) (:*:) (:*:) t, Semimonoidal (<--) (:*:) (:*:) u) => Semimonoidal (<--) (:*:) (:*:) ((t <:.:> u) := (:*:) :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

multiply :: forall (a :: k) (b :: k). (((t <:.:> u) := (:*:)) a :*: ((t <:.:> u) := (:*:)) b) <-- ((t <:.:> u) := (:*:)) (a :*: b) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal (<--) (:*:) (:*:) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Semimonoidal (<--) (:*:) (:*:) u, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t', Semimonoidal (<--) (:*:) (:*:) t') => Semimonoidal (<--) (:*:) (:*:) ((t <:<.>:> t') := u :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TUT

Methods

multiply :: forall (a :: k) (b :: k). (((t <:<.>:> t') := u) a :*: ((t <:<.>:> t') := u) b) <-- ((t <:<.>:> t') := u) (a :*: b) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Semimonoidal (<--) (:*:) (:*:) t, Semimonoidal (<--) (:*:) (:*:) u) => Semimonoidal (<--) (:*:) (:*:) (t <.:> u :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.UT

Methods

multiply :: forall (a :: k) (b :: k). ((t <.:> u) a :*: (t <.:> u) b) <-- (t <.:> u) (a :*: b) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal (<--) (:*:) (:*:) t, Semimonoidal (<--) (:*:) (:*:) u) => Semimonoidal (<--) (:*:) (:*:) (t <:.> u :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TU

Methods

multiply :: forall (a :: k) (b :: k). ((t <:.> u) a :*: (t <:.> u) b) <-- (t <:.> u) (a :*: b) Source #

Comonad ((:*:) s) ((->) :: Type -> Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

Morphable ('Into (Tap ((List <:.:> List) := (:*:)))) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into (Tap ((List <:.:> List) := (:*:)))) List :: Type -> Type Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:+:) Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Maybe

Methods

multiply :: forall (a :: k) (b :: k). (Maybe a :*: Maybe b) -> Maybe (a :+: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) Identity Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Identity

Methods

multiply :: forall (a :: k) (b :: k). (Identity a :*: Identity b) -> Identity (a :*: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Maybe

Methods

multiply :: forall (a :: k) (b :: k). (Maybe a :*: Maybe b) -> Maybe (a :*: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:+:) ((:+:) e :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

Methods

multiply :: forall (a :: k) (b :: k). ((e :+: a) :*: (e :+: b)) -> (e :+: (a :+: b)) Source #

Semigroup e => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:+:) (Validation e :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Validation

Methods

multiply :: forall (a :: k) (b :: k). (Validation e a :*: Validation e b) -> Validation e (a :+: b) Source #

Semigroup e => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:+:) (Conclusion e :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

multiply :: forall (a :: k) (b :: k). (Conclusion e a :*: Conclusion e b) -> Conclusion e (a :+: b) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:+:) t) => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:+:) (Comprehension t :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Comprehension

Methods

multiply :: forall (a :: k) (b :: k). (Comprehension t a :*: Comprehension t b) -> Comprehension t (a :+: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) ((:+:) e :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

Methods

multiply :: forall (a :: k) (b :: k). ((e :+: a) :*: (e :+: b)) -> (e :+: (a :*: b)) Source #

Semigroup e => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Validation e :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Validation

Methods

multiply :: forall (a :: k) (b :: k). (Validation e a :*: Validation e b) -> Validation e (a :*: b) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t) => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Instruction t :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Instruction

Methods

multiply :: forall (a :: k) (b :: k). (Instruction t a :*: Instruction t b) -> Instruction t (a :*: b) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t) => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Construction t :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Construction

Methods

multiply :: forall (a :: k) (b :: k). (Construction t a :*: Construction t b) -> Construction t (a :*: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Conclusion e :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

multiply :: forall (a :: k) (b :: k). (Conclusion e a :*: Conclusion e b) -> Conclusion e (a :*: b) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t) => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Comprehension t :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Comprehension

Methods

multiply :: forall (a :: k) (b :: k). (Comprehension t a :*: Comprehension t b) -> Comprehension t (a :*: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Tap t :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

Methods

multiply :: forall (a :: k) (b :: k). (Tap t a :*: Tap t b) -> Tap t (a :*: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Tap ((t <:.:> t) := (:*:)) :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

Methods

multiply :: forall (a :: k) (b :: k). (Tap ((t <:.:> t) := (:*:)) a :*: Tap ((t <:.:> t) := (:*:)) b) -> Tap ((t <:.:> t) := (:*:)) (a :*: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (State s :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.State

Methods

multiply :: forall (a :: k) (b :: k). (State s a :*: State s b) -> State s (a :*: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Environment e :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Environment

Methods

multiply :: forall (a :: k) (b :: k). (Environment e a :*: Environment e b) -> Environment e (a :*: b) Source #

Semigroup e => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Accumulator e :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Accumulator

Methods

multiply :: forall (a :: k) (b :: k). (Accumulator e a :*: Accumulator e b) -> Accumulator e (a :*: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Tagged tag :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Tagged

Methods

multiply :: forall (a :: k) (b :: k). (Tagged tag a :*: Tagged tag b) -> Tagged tag (a :*: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Schematic Monad t u) => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (t :> u :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Effect.Transformer.Monadic

Methods

multiply :: forall (a :: k) (b :: k). ((t :> u) a :*: (t :> u) b) -> (t :> u) (a :*: b) Source #

(Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t) => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Backwards t :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Backwards

Methods

multiply :: forall (a :: k) (b :: k). (Backwards t a :*: Backwards t b) -> Backwards t (a :*: b) Source #

(Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t) => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Reverse t :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Reverse

Methods

multiply :: forall (a :: k) (b :: k). (Reverse t a :*: Reverse t b) -> Reverse t (a :*: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (Schematic Comonad t u) => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (t :< u :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Effect.Transformer.Comonadic

Methods

multiply :: forall (a :: k) (b :: k). ((t :< u) a :*: (t :< u) b) -> (t :< u) (a :*: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) ((->) e :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

Methods

multiply :: forall (a :: k) (b :: k). ((e -> a) :*: (e -> b)) -> (e -> (a :*: b)) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:+:) t) => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:+:) (t <:.> u :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TU

Methods

multiply :: forall (a :: k) (b :: k). ((t <:.> u) a :*: (t <:.> u) b) -> (t <:.> u) (a :+: b) Source #

Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) ((t <:.:> t) := (:*:) :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

multiply :: forall (a :: k) (b :: k). (((t <:.:> t) := (:*:)) a :*: ((t <:.:> t) := (:*:)) b) -> ((t <:.:> t) := (:*:)) (a :*: b) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t', Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) u, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t') => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) ((t <:<.>:> t') := u :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TUT

Methods

multiply :: forall (a :: k) (b :: k). (((t <:<.>:> t') := u) a :*: ((t <:<.>:> t') := u) b) -> ((t <:<.>:> t') := u) (a :*: b) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) u) => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (t <.:> u :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.UT

Methods

multiply :: forall (a :: k) (b :: k). ((t <.:> u) a :*: (t <.:> u) b) -> (t <.:> u) (a :*: b) Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) u) => Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) (t <:.> u :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TU

Methods

multiply :: forall (a :: k) (b :: k). ((t <:.> u) a :*: (t <:.> u) b) -> (t <:.> u) (a :*: b) Source #

Morphable ('Into (Construction Maybe)) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into (Construction Maybe)) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) :: Type -> Type Source #

Morphable ('Into (Comprehension Maybe)) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into (Comprehension Maybe)) (Tap ((List <:.:> List) := (:*:))) :: Type -> Type Source #

Morphable ('Into (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:)))) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:)))) (Tap ((List <:.:> List) := (:*:))) :: Type -> Type Source #

Morphable ('Into (Tap ((List <:.:> List) := (:*:)))) (Construction Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into (Tap ((List <:.:> List) := (:*:)))) (Construction Maybe) :: Type -> Type Source #

Morphable ('Into (Tap ((List <:.:> List) := (:*:)))) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into (Tap ((List <:.:> List) := (:*:)))) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) :: Type -> Type Source #

Morphable ('Into List) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into List) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) :: Type -> Type Source #

Morphable ('Into List) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into List) (Tap ((List <:.:> List) := (:*:))) :: Type -> Type Source #

Morphable ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((Stream <:.:> Stream) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Stream

Associated Types

type Morphing ('Rotate 'Right) (Tap ((Stream <:.:> Stream) := (:*:))) :: Type -> Type Source #

Morphable ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((Stream <:.:> Stream) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Stream

Associated Types

type Morphing ('Rotate 'Left) (Tap ((Stream <:.:> Stream) := (:*:))) :: Type -> Type Source #

Morphable ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Rotate 'Right) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) :: Type -> Type Source #

Morphable ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Rotate 'Left) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) :: Type -> Type Source #

Morphable ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Rotate 'Right) (Tap ((List <:.:> List) := (:*:))) :: Type -> Type Source #

Morphable ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Rotate 'Left) (Tap ((List <:.:> List) := (:*:))) :: Type -> Type Source #

Morphable ('Into Wye) ((Maybe <:.:> Maybe) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Primary

Associated Types

type Morphing ('Into Wye) ((Maybe <:.:> Maybe) := (:*:)) :: Type -> Type Source #

Morphable ('Rotate ('Up :: a -> Vertical a) :: Morph (a -> Vertical a)) ((Construction Wye <:.:> (Bifurcation <:.> Bicursor)) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Morphing ('Rotate 'Up) ((Construction Wye <:.:> (Bifurcation <:.> Bicursor)) := (:*:)) :: Type -> Type Source #

Morphable ('Rotate ('Down ('Right :: a -> Wye a)) :: Morph (Vertical (a -> Wye a))) ((Construction Wye <:.:> (Bifurcation <:.> Bicursor)) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Morphing ('Rotate ('Down 'Right)) ((Construction Wye <:.:> (Bifurcation <:.> Bicursor)) := (:*:)) :: Type -> Type Source #

Morphable ('Rotate ('Down ('Left :: a -> Wye a)) :: Morph (Vertical (a -> Wye a))) ((Construction Wye <:.:> (Bifurcation <:.> Bicursor)) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Morphing ('Rotate ('Down 'Left)) ((Construction Wye <:.:> (Bifurcation <:.> Bicursor)) := (:*:)) :: Type -> Type Source #

(Semigroup s, Semigroup a) => Semigroup (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

(+) :: (s :*: a) -> (s :*: a) -> s :*: a Source #

(Semigroup a, Semigroup r, Semigroup (a :*: r), Semigroup (Vector r a)) => Semigroup (Vector (a :*: r) a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Linear.Vector

Methods

(+) :: Vector (a :*: r) a -> Vector (a :*: r) a -> Vector (a :*: r) a Source #

(Ringoid s, Ringoid a) => Ringoid (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

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

(Ringoid a, Ringoid r, Ringoid (a :*: r), Ringoid (Vector r a)) => Ringoid (Vector (a :*: r) a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Linear.Vector

Methods

(*) :: Vector (a :*: r) a -> Vector (a :*: r) a -> Vector (a :*: r) a Source #

(Monoid s, Monoid a) => Monoid (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

zero :: s :*: a Source #

(Monoid a, Monoid r, Monoid (a :*: r), Monoid (Vector r a)) => Monoid (Vector (a :*: r) a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Linear.Vector

Methods

zero :: Vector (a :*: r) a Source #

(Quasiring s, Quasiring a) => Quasiring (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

one :: s :*: a Source #

(Quasiring a, Quasiring r, Quasiring (a :*: r), Quasiring (Vector r a)) => Quasiring (Vector (a :*: r) a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Linear.Vector

Methods

one :: Vector (a :*: r) a Source #

(Group s, Group a) => Group (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

invert :: (s :*: a) -> s :*: a Source #

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

(Group a, Group r, Group (a :*: r), Group (Vector r a)) => Group (Vector (a :*: r) a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Linear.Vector

Methods

invert :: Vector (a :*: r) a -> Vector (a :*: r) a Source #

(-) :: Vector (a :*: r) a -> Vector (a :*: r) a -> Vector (a :*: r) a Source #

(Supremum s, Supremum a) => Supremum (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

(\/) :: (s :*: a) -> (s :*: a) -> s :*: a Source #

(Infimum s, Infimum a) => Infimum (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

(/\) :: (s :*: a) -> (s :*: a) -> s :*: a Source #

(Lattice s, Lattice a) => Lattice (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

(Setoid s, Setoid a) => Setoid (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

(==) :: (s :*: a) -> (s :*: a) -> Boolean Source #

(!=) :: (s :*: a) -> (s :*: a) -> Boolean Source #

(Setoid a, Setoid (Vector r a)) => Setoid (Vector (a :*: r) a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Linear.Vector

Methods

(==) :: Vector (a :*: r) a -> Vector (a :*: r) a -> Boolean Source #

(!=) :: Vector (a :*: r) a -> Vector (a :*: r) a -> Boolean Source #

Extendable ((->) :: Type -> Type -> Type) ((:*:) s) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

(<<=) :: ((s :*: a) -> b) -> (s :*: a) -> (s :*: b) Source #

Extendable ((->) :: Type -> Type -> Type) (Tap ((Stream <:.:> Stream) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Stream

Extendable ((->) :: Type -> Type -> Type) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Methods

(<<=) :: (Tap ((List <:.:> List) := (:*:)) a -> b) -> Tap ((List <:.:> List) := (:*:)) a -> Tap ((List <:.:> List) := (:*:)) b Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Substructure ('Right :: a -> Wye a) (Tap ((t <:.:> t) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

Associated Types

type Available 'Right (Tap ((t <:.:> t) := (:*:))) :: Type -> Type Source #

type Substance 'Right (Tap ((t <:.:> t) := (:*:))) :: Type -> Type Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Substructure ('Left :: a -> Wye a) (Tap ((t <:.:> t) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

Associated Types

type Available 'Left (Tap ((t <:.:> t) := (:*:))) :: Type -> Type Source #

type Substance 'Left (Tap ((t <:.:> t) := (:*:))) :: Type -> Type Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Substructure ('Root :: a -> Segment a) (Tap ((t <:.:> t) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

Associated Types

type Available 'Root (Tap ((t <:.:> t) := (:*:))) :: Type -> Type Source #

type Substance 'Root (Tap ((t <:.:> t) := (:*:))) :: Type -> Type Source #

Substructure ('Right :: a -> Wye a) ((:*:) s) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Available 'Right ((:*:) s) :: Type -> Type Source #

type Substance 'Right ((:*:) s) :: Type -> Type Source #

Substructure ('Left :: a1 -> Wye a1) (Flip (:*:) a2) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Available 'Left (Flip (:*:) a2) :: Type -> Type Source #

type Substance 'Left (Flip (:*:) a2) :: Type -> Type Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Substructure ('Right :: a -> Wye a) ((t <:.:> t) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Available 'Right ((t <:.:> t) := (:*:)) :: Type -> Type Source #

type Substance 'Right ((t <:.:> t) := (:*:)) :: Type -> Type Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Substructure ('Left :: a -> Wye a) ((t <:.:> t) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Available 'Left ((t <:.:> t) := (:*:)) :: Type -> Type Source #

type Substance 'Left ((t <:.:> t) := (:*:)) :: Type -> Type Source #

Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:+:) Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Maybe

Methods

unit :: Proxy (:*:) -> (Unit (:+:) -> a) -> Maybe a Source #

Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) Identity Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Identity

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> Identity a Source #

Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Maybe

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> Maybe a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:+:) t) => Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:+:) (Comprehension t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Comprehension

Methods

unit :: Proxy (:*:) -> (Unit (:+:) -> a) -> Comprehension t a Source #

Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) ((:+:) e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> (e :+: a) Source #

Semigroup e => Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Validation e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Validation

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> Validation e a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t) => Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Instruction t) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Instruction

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> Instruction t a Source #

Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> Conclusion e a Source #

Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (State s) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.State

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> State s a Source #

Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Environment e) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Environment

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> Environment e a Source #

Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Tagged tag) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Tagged

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> Tagged tag a Source #

Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Schematic Monad t u) => Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (t :> u) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Effect.Transformer.Monadic

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> (t :> u) a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) t) => Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Backwards t) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Backwards

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> Backwards t a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) t) => Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Reverse t) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Reverse

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> Reverse t a Source #

Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (Schematic Comonad t u) => Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (t :< u) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Effect.Transformer.Comonadic

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> (t :< u) a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:+:) t) => Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:+:) (t <:.> u) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TU

Methods

unit :: Proxy (:*:) -> (Unit (:+:) -> a) -> (t <:.> u) a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t', Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) t', Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) u, Adjoint ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t' t) => Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) ((t <:<.>:> t') := u) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TUT

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> ((t <:<.>:> t') := u) a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) u, Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) t, Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) u) => Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (t <.:> u) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.UT

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> (t <.:> u) a Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) u, Semimonoidal ((->) :: Type -> Type -> Type) (:*:) (:*:) u, Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) t, Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) u) => Monoidal ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) (:*:) (t <:.> u) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TU

Methods

unit :: Proxy (:*:) -> (Unit (:*:) -> a) -> (t <:.> u) a Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) ((:*:) s) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

(-<$>-) :: (a -> b) -> (s :*: a) -> (s :*: b) Source #

Traversable ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) ((:*:) s) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

Methods

(<<-) :: (Covariant (->) (->) u, Monoidal (->) (->) (:*:) (:*:) u) => (a -> u b) -> (s :*: a) -> u (s :*: b) Source #

Traversable ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Traversable ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Tap ((t <:.:> t) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

Methods

(<<-) :: (Covariant (->) (->) u, Monoidal (->) (->) (:*:) (:*:) u) => (a -> u b) -> Tap ((t <:.:> t) := (:*:)) a -> u (Tap ((t <:.:> t) := (:*:)) b) Source #

Traversable ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Methods

(<<-) :: (Covariant (->) (->) u, Monoidal (->) (->) (:*:) (:*:) u) => (a -> u b) -> Tap ((List <:.:> List) := (:*:)) a -> u (Tap ((List <:.:> List) := (:*:)) b) Source #

Adjoint ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) ((:*:) s) ((->) s :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

Methods

(-|) :: ((s :*: a) -> b) -> a -> (s -> b) Source #

(|-) :: (a -> (s -> b)) -> (s :*: a) -> b Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Flip (:*:) a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

(-<$>-) :: (a0 -> b) -> Flip (:*:) a a0 -> Flip (:*:) a b Source #

Bivariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (:*:) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

(<->) :: (a -> b) -> (c -> d) -> (a :*: c) -> (b :*: d) Source #

Adjoint ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Flip (:*:) s) ((->) s :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary

Methods

(-|) :: (Flip (:*:) s a -> b) -> a -> (s -> b) Source #

(|-) :: (a -> (s -> b)) -> Flip (:*:) s a -> b Source #

Extendable ((->) :: Type -> Type -> Type) u => Extendable ((->) :: Type -> Type -> Type) ((:*:) e <:.> u) Source # 
Instance details

Defined in Pandora.Paradigm.Inventory.Equipment

Methods

(<<=) :: (((:*:) e <:.> u) a -> b) -> ((:*:) e <:.> u) a -> ((:*:) e <:.> u) b Source #

type Unit (:*:) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic

type Unit (:*:) = One
type Morphing ('Into (Tap ((List <:.:> List) := (:*:)))) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Into (Construction Maybe)) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Into (Comprehension Maybe)) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Into (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:)))) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Into (Tap ((List <:.:> List) := (:*:)))) (Construction Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Into (Tap ((List <:.:> List) := (:*:)))) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Into List) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Into List) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((Stream <:.:> Stream) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Stream

type Morphing ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((Stream <:.:> Stream) := (:*:))) = Tap ((Stream <:.:> Stream) := (:*:))
type Morphing ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((Stream <:.:> Stream) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Stream

type Morphing ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((Stream <:.:> Stream) := (:*:))) = Tap ((Stream <:.:> Stream) := (:*:))
type Morphing ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((Construction Maybe <:.:> Construction Maybe) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((List <:.:> List) := (:*:))) = Maybe <:.> Tap ((List <:.:> List) := (:*:))
type Morphing ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((List <:.:> List) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) (Tap ((List <:.:> List) := (:*:))) = Maybe <:.> Tap ((List <:.:> List) := (:*:))
type Morphing ('Into Wye) ((Maybe <:.:> Maybe) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Primary

type Morphing ('Rotate ('Up :: a -> Vertical a) :: Morph (a -> Vertical a)) ((Construction Wye <:.:> (Bifurcation <:.> Bicursor)) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Morphing ('Rotate ('Down ('Right :: a -> Wye a)) :: Morph (Vertical (a -> Wye a))) ((Construction Wye <:.:> (Bifurcation <:.> Bicursor)) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Morphing ('Rotate ('Down ('Left :: a -> Wye a)) :: Morph (Vertical (a -> Wye a))) ((Construction Wye <:.:> (Bifurcation <:.> Bicursor)) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Available ('Right :: a -> Wye a) (Tap ((t <:.:> t) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

type Available ('Right :: a -> Wye a) (Tap ((t <:.:> t) := (:*:))) = Identity
type Available ('Left :: a -> Wye a) (Tap ((t <:.:> t) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

type Available ('Left :: a -> Wye a) (Tap ((t <:.:> t) := (:*:))) = Identity
type Available ('Root :: a -> Segment a) (Tap ((t <:.:> t) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

type Available ('Root :: a -> Segment a) (Tap ((t <:.:> t) := (:*:))) = Identity
type Available ('Right :: a -> Wye a) ((:*:) s) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Available ('Right :: a -> Wye a) ((:*:) s) = Identity
type Substance ('Right :: a -> Wye a) (Tap ((t <:.:> t) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

type Substance ('Right :: a -> Wye a) (Tap ((t <:.:> t) := (:*:))) = t
type Substance ('Left :: a -> Wye a) (Tap ((t <:.:> t) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

type Substance ('Left :: a -> Wye a) (Tap ((t <:.:> t) := (:*:))) = t
type Substance ('Root :: a -> Segment a) (Tap ((t <:.:> t) := (:*:))) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Tap

type Substance ('Root :: a -> Segment a) (Tap ((t <:.:> t) := (:*:))) = Identity
type Substance ('Right :: a -> Wye a) ((:*:) s) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Substance ('Right :: a -> Wye a) ((:*:) s) = Identity
type Available ('Left :: a1 -> Wye a1) (Flip (:*:) a2) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Available ('Left :: a1 -> Wye a1) (Flip (:*:) a2) = Identity
type Substance ('Left :: a1 -> Wye a1) (Flip (:*:) a2) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Substance ('Left :: a1 -> Wye a1) (Flip (:*:) a2) = Identity
type Available ('Right :: a -> Wye a) ((t <:.:> t) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Available ('Right :: a -> Wye a) ((t <:.:> t) := (:*:)) = Identity
type Available ('Left :: a -> Wye a) ((t <:.:> t) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Available ('Left :: a -> Wye a) ((t <:.:> t) := (:*:)) = Identity
type Substance ('Right :: a -> Wye a) ((t <:.:> t) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Substance ('Right :: a -> Wye a) ((t <:.:> t) := (:*:)) = t
type Substance ('Left :: a -> Wye a) ((t <:.:> t) := (:*:)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Substance ('Left :: a -> Wye a) ((t <:.:> t) := (:*:)) = t

delta :: a -> a :*: a Source #

swap :: (a :*: b) -> b :*: a Source #

attached :: (a :*: b) -> a Source #

twosome :: t a -> u a -> (<:.:>) t u (:*:) a Source #