packages feed

pandora 0.2.6 → 0.2.7

raw patch · 73 files changed

+1525/−1379 lines, 73 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Pandora.Paradigm.Basis: hush :: Conclusion e ~> Maybe
- Pandora.Paradigm.Basis: left :: Wye ~> Maybe
- Pandora.Paradigm.Basis: note :: e -> Maybe ~> Conclusion e
- Pandora.Paradigm.Basis: right :: Wye ~> Maybe
- Pandora.Paradigm.Basis: that :: Variation e a -> Maybe e
- Pandora.Paradigm.Basis: this :: Variation e ~> Maybe
- Pandora.Paradigm.Basis.Backwards: Backwards :: t a -> Backwards t a
- Pandora.Paradigm.Basis.Backwards: instance Pandora.Paradigm.Controlflow.Joint.Interpreted.Interpreted (Pandora.Paradigm.Basis.Backwards.Backwards t)
- Pandora.Paradigm.Basis.Backwards: instance Pandora.Pattern.Functor.Applicative.Applicative t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Basis.Backwards.Backwards t)
- Pandora.Paradigm.Basis.Backwards: instance Pandora.Pattern.Functor.Contravariant.Contravariant t => Pandora.Pattern.Functor.Contravariant.Contravariant (Pandora.Paradigm.Basis.Backwards.Backwards t)
- Pandora.Paradigm.Basis.Backwards: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Backwards.Backwards t)
- Pandora.Paradigm.Basis.Backwards: instance Pandora.Pattern.Functor.Distributive.Distributive t => Pandora.Pattern.Functor.Distributive.Distributive (Pandora.Paradigm.Basis.Backwards.Backwards t)
- Pandora.Paradigm.Basis.Backwards: instance Pandora.Pattern.Functor.Extractable.Extractable t => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Basis.Backwards.Backwards t)
- Pandora.Paradigm.Basis.Backwards: instance Pandora.Pattern.Functor.Pointable.Pointable t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Basis.Backwards.Backwards t)
- Pandora.Paradigm.Basis.Backwards: instance Pandora.Pattern.Functor.Traversable.Traversable t => Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Basis.Backwards.Backwards t)
- Pandora.Paradigm.Basis.Backwards: newtype Backwards t a
- Pandora.Paradigm.Basis.Conclusion: Failure :: e -> Conclusion e a
- Pandora.Paradigm.Basis.Conclusion: Success :: a -> Conclusion e a
- Pandora.Paradigm.Basis.Conclusion: conclusion :: (e -> r) -> (a -> r) -> Conclusion e a -> r
- Pandora.Paradigm.Basis.Conclusion: data Conclusion e a
- Pandora.Paradigm.Basis.Conclusion: fail :: (e -> r) -> Conclusion e ~> Conclusion r
- Pandora.Paradigm.Basis.Conclusion: failure :: Failable e t => e -> t a
- Pandora.Paradigm.Basis.Conclusion: instance (Pandora.Pattern.Functor.Pointable.Pointable u, Pandora.Pattern.Functor.Bindable.Bindable u) => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Conclusion.Conclusion e) u)
- Pandora.Paradigm.Basis.Conclusion: instance (Pandora.Pattern.Object.Chain.Chain e, Pandora.Pattern.Object.Chain.Chain a) => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Basis.Conclusion.Conclusion e a)
- Pandora.Paradigm.Basis.Conclusion: instance (Pandora.Pattern.Object.Semigroup.Semigroup e, Pandora.Pattern.Object.Semigroup.Semigroup a) => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Basis.Conclusion.Conclusion e a)
- Pandora.Paradigm.Basis.Conclusion: instance (Pandora.Pattern.Object.Setoid.Setoid e, Pandora.Pattern.Object.Setoid.Setoid a) => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Basis.Conclusion.Conclusion e a)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Paradigm.Controlflow.Joint.Interpreted.Interpreted (Pandora.Paradigm.Basis.Conclusion.Conclusion e)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Paradigm.Controlflow.Joint.Transformer.Monadic.Monadic (Pandora.Paradigm.Basis.Conclusion.Conclusion e)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Pattern.Functor.Alternative.Alternative (Pandora.Paradigm.Basis.Conclusion.Conclusion e)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Basis.Conclusion.Conclusion e)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Pattern.Functor.Applicative.Applicative u => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Conclusion.Conclusion e) u)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Basis.Conclusion.Conclusion e)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Pattern.Functor.Bivariant.Bivariant Pandora.Paradigm.Basis.Conclusion.Conclusion
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Conclusion.Conclusion e)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Pattern.Functor.Covariant.Covariant u => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Conclusion.Conclusion e) u)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Basis.Conclusion.Conclusion e)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Pattern.Functor.Monad.Monad u => Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Conclusion.Conclusion e) u)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Basis.Conclusion.Conclusion e)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Pattern.Functor.Pointable.Pointable u => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Conclusion.Conclusion e) u)
- Pandora.Paradigm.Basis.Conclusion: instance Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Basis.Conclusion.Conclusion e)
- Pandora.Paradigm.Basis.Conclusion: type Failable e = Adaptable (Conclusion e)
- Pandora.Paradigm.Basis.Constant: Constant :: a -> Constant a b
- Pandora.Paradigm.Basis.Constant: instance Pandora.Pattern.Functor.Bivariant.Bivariant Pandora.Paradigm.Basis.Constant.Constant
- Pandora.Paradigm.Basis.Constant: instance Pandora.Pattern.Functor.Contravariant.Contravariant (Pandora.Paradigm.Basis.Constant.Constant a)
- Pandora.Paradigm.Basis.Constant: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Constant.Constant a)
- Pandora.Paradigm.Basis.Constant: instance Pandora.Pattern.Functor.Invariant.Invariant (Pandora.Paradigm.Basis.Constant.Constant a)
- Pandora.Paradigm.Basis.Constant: instance Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Basis.Constant.Constant a)
- Pandora.Paradigm.Basis.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Chain.Chain a => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Basis.Constant.Constant a b)
- Pandora.Paradigm.Basis.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Group.Group a => Pandora.Pattern.Object.Group.Group (Pandora.Paradigm.Basis.Constant.Constant a b)
- Pandora.Paradigm.Basis.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Lattice.Lattice a => Pandora.Pattern.Object.Lattice.Lattice (Pandora.Paradigm.Basis.Constant.Constant a b)
- Pandora.Paradigm.Basis.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Monoid.Monoid a => Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Basis.Constant.Constant a b)
- Pandora.Paradigm.Basis.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Quasiring.Quasiring a => Pandora.Pattern.Object.Quasiring.Quasiring (Pandora.Paradigm.Basis.Constant.Constant a b)
- Pandora.Paradigm.Basis.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Ringoid.Ringoid a => Pandora.Pattern.Object.Ringoid.Ringoid (Pandora.Paradigm.Basis.Constant.Constant a b)
- Pandora.Paradigm.Basis.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Semigroup.Semigroup a => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Basis.Constant.Constant a b)
- Pandora.Paradigm.Basis.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Semilattice.Infimum a => Pandora.Pattern.Object.Semilattice.Infimum (Pandora.Paradigm.Basis.Constant.Constant a b)
- Pandora.Paradigm.Basis.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Semilattice.Supremum a => Pandora.Pattern.Object.Semilattice.Supremum (Pandora.Paradigm.Basis.Constant.Constant a b)
- Pandora.Paradigm.Basis.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Setoid.Setoid a => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Basis.Constant.Constant a b)
- Pandora.Paradigm.Basis.Constant: newtype Constant a b
- Pandora.Paradigm.Basis.Continuation: Continuation :: ((((->) ::|:. a) :. t) := r) -> Continuation r t a
- Pandora.Paradigm.Basis.Continuation: [continue] :: Continuation r t a -> (((->) ::|:. a) :. t) := r
- Pandora.Paradigm.Basis.Continuation: cwcc :: ((a -> Continuation r t b) -> Continuation r t a) -> Continuation r t a
- Pandora.Paradigm.Basis.Continuation: instance (forall (u :: * -> *). Pandora.Pattern.Functor.Bindable.Bindable u) => Pandora.Pattern.Transformer.Liftable.Liftable (Pandora.Paradigm.Basis.Continuation.Continuation r)
- Pandora.Paradigm.Basis.Continuation: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Basis.Continuation.Continuation r t)
- Pandora.Paradigm.Basis.Continuation: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Basis.Continuation.Continuation r t)
- Pandora.Paradigm.Basis.Continuation: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Continuation.Continuation r t)
- Pandora.Paradigm.Basis.Continuation: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Basis.Continuation.Continuation r t)
- Pandora.Paradigm.Basis.Continuation: instance Pandora.Pattern.Functor.Monad.Monad t => Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Basis.Continuation.Continuation r t)
- Pandora.Paradigm.Basis.Continuation: newtype Continuation r t a
- Pandora.Paradigm.Basis.Continuation: reset :: (forall u. Bindable u, Bindable t, Pointable t) => Continuation r t r -> Continuation s t r
- Pandora.Paradigm.Basis.Continuation: shift :: Pointable t => ((a -> t r) -> Continuation r t r) -> Continuation r t a
- Pandora.Paradigm.Basis.Edges: Connect :: a -> Edges a
- Pandora.Paradigm.Basis.Edges: Empty :: Edges a
- Pandora.Paradigm.Basis.Edges: Overlay :: a -> Edges a
- Pandora.Paradigm.Basis.Edges: data Edges a
- Pandora.Paradigm.Basis.Edges: edges :: r -> (a -> r) -> (a -> r) -> Edges a -> r
- Pandora.Paradigm.Basis.Edges: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Basis.Edges.Edges
- Pandora.Paradigm.Basis.Edges: instance Pandora.Pattern.Functor.Traversable.Traversable Pandora.Paradigm.Basis.Edges.Edges
- Pandora.Paradigm.Basis.Endo: Endo :: (a -> a) -> Endo a
- Pandora.Paradigm.Basis.Endo: [endo] :: Endo a -> a -> a
- Pandora.Paradigm.Basis.Endo: instance Pandora.Pattern.Functor.Invariant.Invariant Pandora.Paradigm.Basis.Endo.Endo
- Pandora.Paradigm.Basis.Endo: instance Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Basis.Endo.Endo a)
- Pandora.Paradigm.Basis.Endo: instance Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Basis.Endo.Endo a)
- Pandora.Paradigm.Basis.Endo: newtype Endo a
- Pandora.Paradigm.Basis.Fix: Fix :: t (Fix t) -> Fix t
- Pandora.Paradigm.Basis.Fix: [unfix] :: Fix t -> t (Fix t)
- Pandora.Paradigm.Basis.Fix: ana :: Covariant t => (a |-> t) -> a -> Fix t
- Pandora.Paradigm.Basis.Fix: cata :: Covariant t => (a <-| t) -> Fix t -> a
- Pandora.Paradigm.Basis.Fix: hylo :: Covariant t => (b <-| t) -> (a |-> t) -> a -> b
- Pandora.Paradigm.Basis.Fix: newtype Fix t
- Pandora.Paradigm.Basis.Free: Impure :: ((t :. Free t) := a) -> Free t a
- Pandora.Paradigm.Basis.Free: Pure :: a -> Free t a
- Pandora.Paradigm.Basis.Free: data Free t a
- Pandora.Paradigm.Basis.Free: instance Pandora.Pattern.Functor.Alternative.Alternative t => Pandora.Pattern.Functor.Alternative.Alternative (Pandora.Paradigm.Basis.Free.Free t)
- Pandora.Paradigm.Basis.Free: instance Pandora.Pattern.Functor.Avoidable.Avoidable t => Pandora.Pattern.Functor.Avoidable.Avoidable (Pandora.Paradigm.Basis.Free.Free t)
- Pandora.Paradigm.Basis.Free: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Basis.Free.Free t)
- Pandora.Paradigm.Basis.Free: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Basis.Free.Free t)
- Pandora.Paradigm.Basis.Free: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Free.Free t)
- Pandora.Paradigm.Basis.Free: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Basis.Free.Free t)
- Pandora.Paradigm.Basis.Free: instance Pandora.Pattern.Functor.Traversable.Traversable t => Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Basis.Free.Free t)
- Pandora.Paradigm.Basis.Free: instance Pandora.Pattern.Transformer.Liftable.Liftable Pandora.Paradigm.Basis.Free.Free
- Pandora.Paradigm.Basis.Identity: Identity :: a -> Identity a
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Functor.Adjoint.Adjoint Pandora.Paradigm.Basis.Identity.Identity Pandora.Paradigm.Basis.Identity.Identity
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Functor.Applicative.Applicative Pandora.Paradigm.Basis.Identity.Identity
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Functor.Bindable.Bindable Pandora.Paradigm.Basis.Identity.Identity
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Functor.Comonad.Comonad Pandora.Paradigm.Basis.Identity.Identity
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Basis.Identity.Identity
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Functor.Distributive.Distributive Pandora.Paradigm.Basis.Identity.Identity
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Functor.Extendable.Extendable Pandora.Paradigm.Basis.Identity.Identity
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Functor.Extractable.Extractable Pandora.Paradigm.Basis.Identity.Identity
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Functor.Monad.Monad Pandora.Paradigm.Basis.Identity.Identity
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Functor.Pointable.Pointable Pandora.Paradigm.Basis.Identity.Identity
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Functor.Traversable.Traversable Pandora.Paradigm.Basis.Identity.Identity
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Object.Chain.Chain a => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Basis.Identity.Identity a)
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Object.Group.Group a => Pandora.Pattern.Object.Group.Group (Pandora.Paradigm.Basis.Identity.Identity a)
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Object.Lattice.Lattice a => Pandora.Pattern.Object.Lattice.Lattice (Pandora.Paradigm.Basis.Identity.Identity a)
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Object.Monoid.Monoid a => Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Basis.Identity.Identity a)
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Object.Quasiring.Quasiring a => Pandora.Pattern.Object.Quasiring.Quasiring (Pandora.Paradigm.Basis.Identity.Identity a)
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Object.Ringoid.Ringoid a => Pandora.Pattern.Object.Ringoid.Ringoid (Pandora.Paradigm.Basis.Identity.Identity a)
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Object.Semigroup.Semigroup a => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Basis.Identity.Identity a)
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Object.Semilattice.Infimum a => Pandora.Pattern.Object.Semilattice.Infimum (Pandora.Paradigm.Basis.Identity.Identity a)
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Object.Semilattice.Supremum a => Pandora.Pattern.Object.Semilattice.Supremum (Pandora.Paradigm.Basis.Identity.Identity a)
- Pandora.Paradigm.Basis.Identity: instance Pandora.Pattern.Object.Setoid.Setoid a => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Basis.Identity.Identity a)
- Pandora.Paradigm.Basis.Identity: newtype Identity a
- Pandora.Paradigm.Basis.Jack: It :: a -> Jack t a
- Pandora.Paradigm.Basis.Jack: Other :: t a -> Jack t a
- Pandora.Paradigm.Basis.Jack: data Jack t a
- Pandora.Paradigm.Basis.Jack: instance (Pandora.Pattern.Object.Chain.Chain a, Pandora.Pattern.Object.Chain.Chain (t a)) => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Basis.Jack.Jack t a)
- Pandora.Paradigm.Basis.Jack: instance (Pandora.Pattern.Object.Setoid.Setoid a, Pandora.Pattern.Object.Setoid.Setoid (t a)) => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Basis.Jack.Jack t a)
- Pandora.Paradigm.Basis.Jack: instance Pandora.Pattern.Functor.Alternative.Alternative t => Pandora.Pattern.Functor.Alternative.Alternative (Pandora.Paradigm.Basis.Jack.Jack t)
- Pandora.Paradigm.Basis.Jack: instance Pandora.Pattern.Functor.Applicative.Applicative t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Basis.Jack.Jack t)
- Pandora.Paradigm.Basis.Jack: instance Pandora.Pattern.Functor.Avoidable.Avoidable t => Pandora.Pattern.Functor.Avoidable.Avoidable (Pandora.Paradigm.Basis.Jack.Jack t)
- Pandora.Paradigm.Basis.Jack: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Jack.Jack t)
- Pandora.Paradigm.Basis.Jack: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Basis.Jack.Jack t)
- Pandora.Paradigm.Basis.Jack: instance Pandora.Pattern.Functor.Distributive.Distributive t => Pandora.Pattern.Functor.Distributive.Distributive (Pandora.Paradigm.Basis.Jack.Jack t)
- Pandora.Paradigm.Basis.Jack: instance Pandora.Pattern.Functor.Extractable.Extractable t => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Basis.Jack.Jack t)
- Pandora.Paradigm.Basis.Jack: instance Pandora.Pattern.Functor.Traversable.Traversable t => Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Basis.Jack.Jack t)
- Pandora.Paradigm.Basis.Jack: instance Pandora.Pattern.Transformer.Liftable.Liftable Pandora.Paradigm.Basis.Jack.Jack
- Pandora.Paradigm.Basis.Jack: jack :: (a -> r) -> (t a -> r) -> Jack t a -> r
- Pandora.Paradigm.Basis.Jet: Jet :: a -> Jet t (t a) -> Jet t a
- Pandora.Paradigm.Basis.Jet: data Jet t a
- Pandora.Paradigm.Basis.Jet: instance (forall (u :: * -> *). Pandora.Pattern.Functor.Avoidable.Avoidable u) => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Basis.Jet.Jet t)
- Pandora.Paradigm.Basis.Jet: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Jet.Jet t)
- Pandora.Paradigm.Basis.Jet: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Basis.Jet.Jet t)
- Pandora.Paradigm.Basis.Jet: instance Pandora.Pattern.Functor.Traversable.Traversable t => Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Basis.Jet.Jet t)
- Pandora.Paradigm.Basis.Kan: Lan :: ((t b -> a) -> u b) -> Lan t u b a
- Pandora.Paradigm.Basis.Kan: Ran :: ((a -> t b) -> u b) -> Ran t u b a
- Pandora.Paradigm.Basis.Kan: instance forall k (t :: k -> *) (u :: k -> *) (b :: k). Pandora.Paradigm.Controlflow.Joint.Interpreted.Interpreted (Pandora.Paradigm.Basis.Kan.Lan t u b)
- Pandora.Paradigm.Basis.Kan: instance forall k (t :: k -> *) (u :: k -> *) (b :: k). Pandora.Paradigm.Controlflow.Joint.Interpreted.Interpreted (Pandora.Paradigm.Basis.Kan.Ran t u b)
- Pandora.Paradigm.Basis.Kan: instance forall k (t :: k -> *) (u :: k -> *) (b :: k). Pandora.Pattern.Functor.Contravariant.Contravariant (Pandora.Paradigm.Basis.Kan.Lan t u b)
- Pandora.Paradigm.Basis.Kan: instance forall k (t :: k -> *) (u :: k -> *) (b :: k). Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Kan.Ran t u b)
- Pandora.Paradigm.Basis.Kan: newtype Lan t u b a
- Pandora.Paradigm.Basis.Kan: newtype Ran t u b a
- Pandora.Paradigm.Basis.Maybe: Just :: a -> Maybe a
- Pandora.Paradigm.Basis.Maybe: Nothing :: Maybe a
- Pandora.Paradigm.Basis.Maybe: data Maybe a
- Pandora.Paradigm.Basis.Maybe: instance (Pandora.Pattern.Functor.Pointable.Pointable u, Pandora.Pattern.Functor.Bindable.Bindable u) => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Basis.Maybe.Maybe u)
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Paradigm.Controlflow.Joint.Interpreted.Interpreted Pandora.Paradigm.Basis.Maybe.Maybe
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Paradigm.Controlflow.Joint.Transformer.Monadic.Monadic Pandora.Paradigm.Basis.Maybe.Maybe
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Functor.Alternative.Alternative Pandora.Paradigm.Basis.Maybe.Maybe
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Functor.Applicative.Applicative Pandora.Paradigm.Basis.Maybe.Maybe
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Functor.Applicative.Applicative u => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Basis.Maybe.Maybe u)
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Functor.Avoidable.Avoidable Pandora.Paradigm.Basis.Maybe.Maybe
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Functor.Bindable.Bindable Pandora.Paradigm.Basis.Maybe.Maybe
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Basis.Maybe.Maybe
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Functor.Covariant.Covariant u => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Basis.Maybe.Maybe u)
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Functor.Monad.Monad Pandora.Paradigm.Basis.Maybe.Maybe
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Functor.Monad.Monad u => Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Basis.Maybe.Maybe u)
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Functor.Pointable.Pointable Pandora.Paradigm.Basis.Maybe.Maybe
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Functor.Pointable.Pointable u => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Basis.Maybe.Maybe u)
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Functor.Traversable.Traversable Pandora.Paradigm.Basis.Maybe.Maybe
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Object.Chain.Chain a => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Basis.Maybe.Maybe a)
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Object.Lattice.Lattice a => Pandora.Pattern.Object.Lattice.Lattice (Pandora.Paradigm.Basis.Maybe.Maybe a)
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Object.Semigroup.Semigroup a => Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Basis.Maybe.Maybe a)
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Object.Semigroup.Semigroup a => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Basis.Maybe.Maybe a)
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Object.Semilattice.Infimum a => Pandora.Pattern.Object.Semilattice.Infimum (Pandora.Paradigm.Basis.Maybe.Maybe a)
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Object.Semilattice.Supremum a => Pandora.Pattern.Object.Semilattice.Supremum (Pandora.Paradigm.Basis.Maybe.Maybe a)
- Pandora.Paradigm.Basis.Maybe: instance Pandora.Pattern.Object.Setoid.Setoid a => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Basis.Maybe.Maybe a)
- Pandora.Paradigm.Basis.Maybe: maybe :: b -> (a -> b) -> Maybe a -> b
- Pandora.Paradigm.Basis.Maybe: nothing :: Optional t => t a
- Pandora.Paradigm.Basis.Maybe: type Optional = Adaptable Maybe
- Pandora.Paradigm.Basis.Predicate: Predicate :: (a -> Boolean) -> Predicate a
- Pandora.Paradigm.Basis.Predicate: [predicate] :: Predicate a -> a -> Boolean
- Pandora.Paradigm.Basis.Predicate: instance Pandora.Pattern.Functor.Contravariant.Contravariant Pandora.Paradigm.Basis.Predicate.Predicate
- Pandora.Paradigm.Basis.Predicate: instance Pandora.Pattern.Functor.Determinable.Determinable Pandora.Paradigm.Basis.Predicate.Predicate
- Pandora.Paradigm.Basis.Predicate: newtype Predicate a
- Pandora.Paradigm.Basis.Product: (:*:) :: a -> b -> Product a b
- Pandora.Paradigm.Basis.Product: attached :: (a :*: b) -> a
- Pandora.Paradigm.Basis.Product: curry :: ((a :*: b) -> c) -> a -> b -> c
- Pandora.Paradigm.Basis.Product: data Product a b
- Pandora.Paradigm.Basis.Product: delta :: a -> a :*: a
- Pandora.Paradigm.Basis.Product: infixr 1 :*:
- Pandora.Paradigm.Basis.Product: instance (Pandora.Pattern.Object.Group.Group a, Pandora.Pattern.Object.Group.Group b) => Pandora.Pattern.Object.Group.Group (Pandora.Paradigm.Basis.Product.Product a b)
- Pandora.Paradigm.Basis.Product: instance (Pandora.Pattern.Object.Lattice.Lattice a, Pandora.Pattern.Object.Lattice.Lattice b) => Pandora.Pattern.Object.Lattice.Lattice (Pandora.Paradigm.Basis.Product.Product a b)
- Pandora.Paradigm.Basis.Product: instance (Pandora.Pattern.Object.Monoid.Monoid a, Pandora.Pattern.Object.Monoid.Monoid b) => Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Basis.Product.Product a b)
- Pandora.Paradigm.Basis.Product: instance (Pandora.Pattern.Object.Quasiring.Quasiring a, Pandora.Pattern.Object.Quasiring.Quasiring b) => Pandora.Pattern.Object.Quasiring.Quasiring (Pandora.Paradigm.Basis.Product.Product a b)
- Pandora.Paradigm.Basis.Product: instance (Pandora.Pattern.Object.Ringoid.Ringoid a, Pandora.Pattern.Object.Ringoid.Ringoid b) => Pandora.Pattern.Object.Ringoid.Ringoid (Pandora.Paradigm.Basis.Product.Product a b)
- Pandora.Paradigm.Basis.Product: instance (Pandora.Pattern.Object.Semigroup.Semigroup a, Pandora.Pattern.Object.Semigroup.Semigroup b) => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Basis.Product.Product a b)
- Pandora.Paradigm.Basis.Product: instance (Pandora.Pattern.Object.Semilattice.Infimum a, Pandora.Pattern.Object.Semilattice.Infimum b) => Pandora.Pattern.Object.Semilattice.Infimum (Pandora.Paradigm.Basis.Product.Product a b)
- Pandora.Paradigm.Basis.Product: instance (Pandora.Pattern.Object.Semilattice.Supremum a, Pandora.Pattern.Object.Semilattice.Supremum b) => Pandora.Pattern.Object.Semilattice.Supremum (Pandora.Paradigm.Basis.Product.Product a b)
- Pandora.Paradigm.Basis.Product: instance (Pandora.Pattern.Object.Setoid.Setoid a, Pandora.Pattern.Object.Setoid.Setoid b) => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Basis.Product.Product a b)
- Pandora.Paradigm.Basis.Product: instance Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Basis.Product.Product a) ((->) a)
- Pandora.Paradigm.Basis.Product: instance Pandora.Pattern.Functor.Bivariant.Bivariant Pandora.Paradigm.Basis.Product.Product
- Pandora.Paradigm.Basis.Product: instance Pandora.Pattern.Functor.Comonad.Comonad (Pandora.Paradigm.Basis.Product.Product a)
- Pandora.Paradigm.Basis.Product: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Product.Product a)
- Pandora.Paradigm.Basis.Product: instance Pandora.Pattern.Functor.Extendable.Extendable (Pandora.Paradigm.Basis.Product.Product a)
- Pandora.Paradigm.Basis.Product: instance Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Basis.Product.Product a)
- Pandora.Paradigm.Basis.Product: instance Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Basis.Product.Product a)
- Pandora.Paradigm.Basis.Product: swap :: (a :*: b) -> b :*: a
- Pandora.Paradigm.Basis.Product: type (:*:) = Product
- Pandora.Paradigm.Basis.Product: uncurry :: (a -> b -> c) -> (a :*: b) -> c
- Pandora.Paradigm.Basis.Proxy: Proxy :: Proxy a
- Pandora.Paradigm.Basis.Proxy: data Proxy a
- Pandora.Paradigm.Basis.Proxy: instance Pandora.Pattern.Functor.Alternative.Alternative Pandora.Paradigm.Basis.Proxy.Proxy
- Pandora.Paradigm.Basis.Proxy: instance Pandora.Pattern.Functor.Applicative.Applicative Pandora.Paradigm.Basis.Proxy.Proxy
- Pandora.Paradigm.Basis.Proxy: instance Pandora.Pattern.Functor.Bindable.Bindable Pandora.Paradigm.Basis.Proxy.Proxy
- Pandora.Paradigm.Basis.Proxy: instance Pandora.Pattern.Functor.Contravariant.Contravariant Pandora.Paradigm.Basis.Proxy.Proxy
- Pandora.Paradigm.Basis.Proxy: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Basis.Proxy.Proxy
- Pandora.Paradigm.Basis.Proxy: instance Pandora.Pattern.Functor.Distributive.Distributive Pandora.Paradigm.Basis.Proxy.Proxy
- Pandora.Paradigm.Basis.Proxy: instance Pandora.Pattern.Functor.Extendable.Extendable Pandora.Paradigm.Basis.Proxy.Proxy
- Pandora.Paradigm.Basis.Proxy: instance Pandora.Pattern.Functor.Monad.Monad Pandora.Paradigm.Basis.Proxy.Proxy
- Pandora.Paradigm.Basis.Proxy: instance Pandora.Pattern.Functor.Pointable.Pointable Pandora.Paradigm.Basis.Proxy.Proxy
- Pandora.Paradigm.Basis.Tagged: Tag :: a -> Tagged tag a
- Pandora.Paradigm.Basis.Tagged: infixr 0 :#
- Pandora.Paradigm.Basis.Tagged: instance Pandora.Pattern.Functor.Bivariant.Bivariant Pandora.Paradigm.Basis.Tagged.Tagged
- Pandora.Paradigm.Basis.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Basis.Tagged.Tagged tag)
- Pandora.Paradigm.Basis.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Basis.Tagged.Tagged tag)
- Pandora.Paradigm.Basis.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Comonad.Comonad (Pandora.Paradigm.Basis.Tagged.Tagged tag)
- Pandora.Paradigm.Basis.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Tagged.Tagged tag)
- Pandora.Paradigm.Basis.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Distributive.Distributive (Pandora.Paradigm.Basis.Tagged.Tagged tag)
- Pandora.Paradigm.Basis.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Extendable.Extendable (Pandora.Paradigm.Basis.Tagged.Tagged tag)
- Pandora.Paradigm.Basis.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Basis.Tagged.Tagged tag)
- Pandora.Paradigm.Basis.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Basis.Tagged.Tagged tag)
- Pandora.Paradigm.Basis.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Basis.Tagged.Tagged tag)
- Pandora.Paradigm.Basis.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Basis.Tagged.Tagged tag)
- Pandora.Paradigm.Basis.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Chain.Chain a => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Basis.Tagged.Tagged tag a)
- Pandora.Paradigm.Basis.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Group.Group a => Pandora.Pattern.Object.Group.Group (Pandora.Paradigm.Basis.Tagged.Tagged tag a)
- Pandora.Paradigm.Basis.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Lattice.Lattice a => Pandora.Pattern.Object.Lattice.Lattice (Pandora.Paradigm.Basis.Tagged.Tagged tag a)
- Pandora.Paradigm.Basis.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Monoid.Monoid a => Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Basis.Tagged.Tagged tag a)
- Pandora.Paradigm.Basis.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Quasiring.Quasiring a => Pandora.Pattern.Object.Quasiring.Quasiring (Pandora.Paradigm.Basis.Tagged.Tagged tag a)
- Pandora.Paradigm.Basis.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Ringoid.Ringoid a => Pandora.Pattern.Object.Ringoid.Ringoid (Pandora.Paradigm.Basis.Tagged.Tagged tag a)
- Pandora.Paradigm.Basis.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Semigroup.Semigroup a => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Basis.Tagged.Tagged tag a)
- Pandora.Paradigm.Basis.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Semilattice.Infimum a => Pandora.Pattern.Object.Semilattice.Infimum (Pandora.Paradigm.Basis.Tagged.Tagged tag a)
- Pandora.Paradigm.Basis.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Semilattice.Supremum a => Pandora.Pattern.Object.Semilattice.Supremum (Pandora.Paradigm.Basis.Tagged.Tagged tag a)
- Pandora.Paradigm.Basis.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Setoid.Setoid a => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Basis.Tagged.Tagged tag a)
- Pandora.Paradigm.Basis.Tagged: newtype Tagged tag a
- Pandora.Paradigm.Basis.Tagged: retag :: Tagged old ~> Tagged new
- Pandora.Paradigm.Basis.Tagged: tagself :: a |-> Tagged a
- Pandora.Paradigm.Basis.Tagged: type (:#) tag = Tagged tag
- Pandora.Paradigm.Basis.Twister: Twister :: a -> ((t :. Twister t) := a) -> Twister t a
- Pandora.Paradigm.Basis.Twister: coiterate :: Covariant t => (a |-> t) -> a |-> Twister t
- Pandora.Paradigm.Basis.Twister: data Twister t a
- Pandora.Paradigm.Basis.Twister: instance (Pandora.Pattern.Functor.Avoidable.Avoidable t, Pandora.Pattern.Functor.Alternative.Alternative t) => Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Basis.Twister.Twister t)
- Pandora.Paradigm.Basis.Twister: instance (Pandora.Pattern.Object.Monoid.Monoid a, forall b. Pandora.Pattern.Object.Semigroup.Semigroup b => Pandora.Pattern.Object.Monoid.Monoid (t b)) => Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Basis.Twister.Twister t a)
- Pandora.Paradigm.Basis.Twister: instance (Pandora.Pattern.Object.Semigroup.Semigroup a, forall b. Pandora.Pattern.Object.Semigroup.Semigroup b => Pandora.Pattern.Object.Semigroup.Semigroup (t b)) => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Basis.Twister.Twister t a)
- Pandora.Paradigm.Basis.Twister: instance (Pandora.Pattern.Object.Setoid.Setoid a, forall b. Pandora.Pattern.Object.Setoid.Setoid b => Pandora.Pattern.Object.Setoid.Setoid (t b)) => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Basis.Twister.Twister t a)
- Pandora.Paradigm.Basis.Twister: instance Pandora.Pattern.Functor.Alternative.Alternative t => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Basis.Twister.Twister t)
- Pandora.Paradigm.Basis.Twister: instance Pandora.Pattern.Functor.Applicative.Applicative t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Basis.Twister.Twister t)
- Pandora.Paradigm.Basis.Twister: instance Pandora.Pattern.Functor.Avoidable.Avoidable t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Basis.Twister.Twister t)
- Pandora.Paradigm.Basis.Twister: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Comonad.Comonad (Pandora.Paradigm.Basis.Twister.Twister t)
- Pandora.Paradigm.Basis.Twister: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Twister.Twister t)
- Pandora.Paradigm.Basis.Twister: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Extendable.Extendable (Pandora.Paradigm.Basis.Twister.Twister t)
- Pandora.Paradigm.Basis.Twister: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Basis.Twister.Twister t)
- Pandora.Paradigm.Basis.Twister: instance Pandora.Pattern.Functor.Traversable.Traversable t => Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Basis.Twister.Twister t)
- Pandora.Paradigm.Basis.Twister: instance Pandora.Pattern.Transformer.Lowerable.Lowerable Pandora.Paradigm.Basis.Twister.Twister
- Pandora.Paradigm.Basis.Twister: section :: Comonad t => t ~> Twister t
- Pandora.Paradigm.Basis.Twister: untwist :: Twister t a -> (t :. Twister t) a
- Pandora.Paradigm.Basis.Validation: Flaws :: e -> Validation e a
- Pandora.Paradigm.Basis.Validation: Validated :: a -> Validation e a
- Pandora.Paradigm.Basis.Validation: data Validation e a
- Pandora.Paradigm.Basis.Validation: instance (Pandora.Pattern.Object.Chain.Chain e, Pandora.Pattern.Object.Chain.Chain a) => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Basis.Validation.Validation e a)
- Pandora.Paradigm.Basis.Validation: instance (Pandora.Pattern.Object.Semigroup.Semigroup e, Pandora.Pattern.Object.Semigroup.Semigroup a) => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Basis.Validation.Validation e a)
- Pandora.Paradigm.Basis.Validation: instance (Pandora.Pattern.Object.Setoid.Setoid e, Pandora.Pattern.Object.Setoid.Setoid a) => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Basis.Validation.Validation e a)
- Pandora.Paradigm.Basis.Validation: instance Pandora.Pattern.Functor.Alternative.Alternative (Pandora.Paradigm.Basis.Validation.Validation e)
- Pandora.Paradigm.Basis.Validation: instance Pandora.Pattern.Functor.Bivariant.Bivariant Pandora.Paradigm.Basis.Validation.Validation
- Pandora.Paradigm.Basis.Validation: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Validation.Validation e)
- Pandora.Paradigm.Basis.Validation: instance Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Basis.Validation.Validation e)
- Pandora.Paradigm.Basis.Validation: instance Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Basis.Validation.Validation e)
- Pandora.Paradigm.Basis.Validation: instance Pandora.Pattern.Object.Semigroup.Semigroup e => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Basis.Validation.Validation e)
- Pandora.Paradigm.Basis.Variation: That :: e -> Variation e a
- Pandora.Paradigm.Basis.Variation: These :: e -> a -> Variation e a
- Pandora.Paradigm.Basis.Variation: This :: a -> Variation e a
- Pandora.Paradigm.Basis.Variation: data Variation e a
- Pandora.Paradigm.Basis.Variation: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Variation.Variation e)
- Pandora.Paradigm.Basis.Variation: instance Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Basis.Variation.Variation e)
- Pandora.Paradigm.Basis.Variation: instance Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Basis.Variation.Variation e)
- Pandora.Paradigm.Basis.Variation: variation :: (a -> r) -> (e -> r) -> (e -> a -> r) -> Variation e a -> r
- Pandora.Paradigm.Basis.Wye: Both :: a -> a -> Wye a
- Pandora.Paradigm.Basis.Wye: End :: Wye a
- Pandora.Paradigm.Basis.Wye: Left :: a -> Wye a
- Pandora.Paradigm.Basis.Wye: Right :: a -> Wye a
- Pandora.Paradigm.Basis.Wye: data Wye a
- Pandora.Paradigm.Basis.Wye: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Basis.Wye.Wye
- Pandora.Paradigm.Basis.Wye: instance Pandora.Pattern.Functor.Traversable.Traversable Pandora.Paradigm.Basis.Wye.Wye
- Pandora.Paradigm.Basis.Wye: wye :: r -> (a -> r) -> (a -> r) -> (a -> a -> r) -> Wye a -> r
- Pandora.Paradigm.Basis.Yoneda: Yoneda :: (forall b. (a -> b) -> t b) -> Yoneda t a
- Pandora.Paradigm.Basis.Yoneda: [yoneda] :: Yoneda t a -> forall b. (a -> b) -> t b
- Pandora.Paradigm.Basis.Yoneda: instance (Pandora.Pattern.Functor.Extractable.Extractable t, Pandora.Pattern.Functor.Pointable.Pointable t, Pandora.Pattern.Functor.Extractable.Extractable u, Pandora.Pattern.Functor.Pointable.Pointable u) => Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Basis.Yoneda.Yoneda t) (Pandora.Paradigm.Basis.Yoneda.Yoneda u)
- Pandora.Paradigm.Basis.Yoneda: instance Pandora.Pattern.Functor.Alternative.Alternative t => Pandora.Pattern.Functor.Alternative.Alternative (Pandora.Paradigm.Basis.Yoneda.Yoneda t)
- Pandora.Paradigm.Basis.Yoneda: instance Pandora.Pattern.Functor.Applicative.Applicative t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Basis.Yoneda.Yoneda t)
- Pandora.Paradigm.Basis.Yoneda: instance Pandora.Pattern.Functor.Avoidable.Avoidable t => Pandora.Pattern.Functor.Avoidable.Avoidable (Pandora.Paradigm.Basis.Yoneda.Yoneda t)
- Pandora.Paradigm.Basis.Yoneda: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Basis.Yoneda.Yoneda t)
- Pandora.Paradigm.Basis.Yoneda: instance Pandora.Pattern.Functor.Extractable.Extractable t => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Basis.Yoneda.Yoneda t)
- Pandora.Paradigm.Basis.Yoneda: instance Pandora.Pattern.Functor.Pointable.Pointable t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Basis.Yoneda.Yoneda t)
- Pandora.Paradigm.Basis.Yoneda: instance Pandora.Pattern.Transformer.Liftable.Liftable Pandora.Paradigm.Basis.Yoneda.Yoneda
- Pandora.Paradigm.Basis.Yoneda: newtype Yoneda t a
- Pandora.Paradigm.Inventory.Accumulator: instance (Pandora.Pattern.Functor.Pointable.Pointable u, Pandora.Pattern.Object.Monoid.Monoid e) => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Basis.Product.:*:) e) u)
- Pandora.Paradigm.Inventory.Accumulator: instance (Pandora.Pattern.Object.Semigroup.Semigroup e, Pandora.Pattern.Functor.Applicative.Applicative u) => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Basis.Product.:*:) e) u)
- Pandora.Paradigm.Inventory.Accumulator: instance (Pandora.Pattern.Object.Semigroup.Semigroup e, Pandora.Pattern.Functor.Pointable.Pointable u, Pandora.Pattern.Functor.Bindable.Bindable u) => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Basis.Product.:*:) e) u)
- Pandora.Paradigm.Inventory.Accumulator: instance Pandora.Pattern.Functor.Covariant.Covariant u => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Basis.Product.:*:) e) u)
- Pandora.Paradigm.Inventory.Equipment: instance Pandora.Pattern.Functor.Covariant.Covariant u => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Basis.Product.:*:) e) u)
- Pandora.Paradigm.Inventory.Equipment: instance Pandora.Pattern.Functor.Extendable.Extendable u => Pandora.Pattern.Functor.Extendable.Extendable (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Basis.Product.:*:) e) u)
- Pandora.Paradigm.Inventory.Equipment: instance Pandora.Pattern.Functor.Extractable.Extractable u => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Basis.Product.:*:) e) u)
- Pandora.Paradigm.Inventory.Optics: instance Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Inventory.Store.Store s) (Pandora.Paradigm.Inventory.State.State s)
- Pandora.Paradigm.Inventory.State: instance Pandora.Pattern.Functor.Bindable.Bindable u => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((->) s) ((Pandora.Paradigm.Basis.Product.:*:) s) u)
- Pandora.Paradigm.Inventory.State: instance Pandora.Pattern.Functor.Bindable.Bindable u => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((->) s) ((Pandora.Paradigm.Basis.Product.:*:) s) u)
- Pandora.Paradigm.Inventory.State: instance Pandora.Pattern.Functor.Covariant.Covariant u => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((->) s) ((Pandora.Paradigm.Basis.Product.:*:) s) u)
- Pandora.Paradigm.Inventory.State: instance Pandora.Pattern.Functor.Monad.Monad u => Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((->) s) ((Pandora.Paradigm.Basis.Product.:*:) s) u)
- Pandora.Paradigm.Inventory.State: instance Pandora.Pattern.Functor.Pointable.Pointable u => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((->) s) ((Pandora.Paradigm.Basis.Product.:*:) s) u)
- Pandora.Paradigm.Inventory.Store: instance Pandora.Pattern.Functor.Covariant.Covariant u => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Basis.Product.:*:) p) ((->) p) u)
- Pandora.Paradigm.Inventory.Store: instance Pandora.Pattern.Functor.Extendable.Extendable u => Pandora.Pattern.Functor.Extendable.Extendable (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Basis.Product.:*:) p) ((->) p) u)
- Pandora.Paradigm.Inventory.Store: instance Pandora.Pattern.Functor.Extractable.Extractable u => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Basis.Product.:*:) p) ((->) p) u)
- Pandora.Paradigm.Structure.Binary: instance Pandora.Paradigm.Structure.Variation.Substructure.Substructure 'Pandora.Paradigm.Basis.Wye.Left (Pandora.Paradigm.Basis.Twister.Twister Pandora.Paradigm.Basis.Wye.Wye)
- Pandora.Paradigm.Structure.Binary: instance Pandora.Paradigm.Structure.Variation.Substructure.Substructure 'Pandora.Paradigm.Basis.Wye.Left Pandora.Paradigm.Structure.Binary.Binary
- Pandora.Paradigm.Structure.Binary: instance Pandora.Paradigm.Structure.Variation.Substructure.Substructure 'Pandora.Paradigm.Basis.Wye.Right (Pandora.Paradigm.Basis.Twister.Twister Pandora.Paradigm.Basis.Wye.Wye)
- Pandora.Paradigm.Structure.Binary: instance Pandora.Paradigm.Structure.Variation.Substructure.Substructure 'Pandora.Paradigm.Basis.Wye.Right Pandora.Paradigm.Structure.Binary.Binary
- Pandora.Paradigm.Structure.Binary: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Structure.Binary.Binary
- Pandora.Paradigm.Structure.Binary: instance Pandora.Pattern.Functor.Pointable.Pointable Pandora.Paradigm.Structure.Binary.Binary
- Pandora.Paradigm.Structure.Binary: instance Pandora.Pattern.Functor.Traversable.Traversable Pandora.Paradigm.Structure.Binary.Binary
- Pandora.Paradigm.Structure.Graph: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Structure.Graph.Graph
- Pandora.Paradigm.Structure.Graph: instance Pandora.Pattern.Functor.Traversable.Traversable Pandora.Paradigm.Structure.Graph.Graph
- Pandora.Paradigm.Structure.Graph: loose :: Traversable t => t ~> Graph
- Pandora.Paradigm.Structure.Graph: type Graph = UT Covariant Covariant (Twister Edges) Edges
- Pandora.Paradigm.Structure.Stack: instance Pandora.Pattern.Functor.Alternative.Alternative Pandora.Paradigm.Structure.Stack.Stack
- Pandora.Paradigm.Structure.Stack: instance Pandora.Pattern.Functor.Applicative.Applicative Pandora.Paradigm.Structure.Stack.Stack
- Pandora.Paradigm.Structure.Stack: instance Pandora.Pattern.Functor.Avoidable.Avoidable Pandora.Paradigm.Structure.Stack.Stack
- Pandora.Paradigm.Structure.Stack: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Structure.Stack.Stack
- Pandora.Paradigm.Structure.Stack: instance Pandora.Pattern.Functor.Pointable.Pointable Pandora.Paradigm.Structure.Stack.Stack
- Pandora.Paradigm.Structure.Stack: instance Pandora.Pattern.Functor.Traversable.Traversable Pandora.Paradigm.Structure.Stack.Stack
+ Pandora.Paradigm.Controlflow.Joint.Schemes: instance (Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant v t), Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant u w), Pandora.Pattern.Functor.Adjoint.Adjoint t u, Pandora.Pattern.Functor.Adjoint.Adjoint v w) => Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant v t) (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant u w)
+ Pandora.Paradigm.Controlflow.Joint.Schemes: instance (Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant v t), Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant w u), Pandora.Pattern.Functor.Adjoint.Adjoint t u, Pandora.Pattern.Functor.Adjoint.Adjoint v w) => Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant v t) (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant w u)
+ Pandora.Paradigm.Controlflow.Joint.Schemes: instance (Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant t u t'), Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant v w v'), Pandora.Pattern.Functor.Adjoint.Adjoint t w, Pandora.Pattern.Functor.Adjoint.Adjoint t' v', Pandora.Pattern.Functor.Adjoint.Adjoint t v, Pandora.Pattern.Functor.Adjoint.Adjoint u v, Pandora.Pattern.Functor.Adjoint.Adjoint v' t') => Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant t u t') (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant v w v')
+ Pandora.Paradigm.Controlflow.Joint.Schemes: instance (Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant t v), Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant w u), Pandora.Pattern.Functor.Adjoint.Adjoint v u, Pandora.Pattern.Functor.Adjoint.Adjoint t w) => Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant t v) (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant w u)
+ Pandora.Paradigm.Controlflow.Joint.Schemes: instance (Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant t v), Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant w u), Pandora.Pattern.Functor.Adjoint.Adjoint t u, Pandora.Pattern.Functor.Adjoint.Adjoint v w) => Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant t v) (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant w u)
+ Pandora.Paradigm.Controlflow.Joint.Schemes.TUT: instance (Pandora.Pattern.Functor.Adjoint.Adjoint t t', Pandora.Pattern.Functor.Distributive.Distributive t') => Pandora.Pattern.Transformer.Lowerable.Lowerable (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant t t')
+ Pandora.Paradigm.Controlflow.Joint.Schemes.TUT: instance (Pandora.Pattern.Functor.Adjoint.Adjoint t' t, Pandora.Pattern.Functor.Applicative.Applicative t, Pandora.Pattern.Functor.Pointable.Pointable t, forall (u :: * -> *). Pandora.Pattern.Functor.Traversable.Traversable u) => Pandora.Pattern.Transformer.Liftable.Liftable (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant t t')
+ Pandora.Paradigm.Inventory: instance Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Inventory.Accumulator.Accumulator e) (Pandora.Paradigm.Inventory.Imprint.Imprint e)
+ Pandora.Paradigm.Inventory: instance Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Inventory.Equipment.Equipment e) (Pandora.Paradigm.Inventory.Environment.Environment e)
+ Pandora.Paradigm.Inventory: instance Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Inventory.Store.Store s) (Pandora.Paradigm.Inventory.State.State s)
+ Pandora.Paradigm.Inventory.Accumulator: instance (Pandora.Pattern.Functor.Pointable.Pointable u, Pandora.Pattern.Object.Monoid.Monoid e) => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Primary.Functor.Product.:*:) e) u)
+ Pandora.Paradigm.Inventory.Accumulator: instance (Pandora.Pattern.Object.Semigroup.Semigroup e, Pandora.Pattern.Functor.Applicative.Applicative u) => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Primary.Functor.Product.:*:) e) u)
+ Pandora.Paradigm.Inventory.Accumulator: instance (Pandora.Pattern.Object.Semigroup.Semigroup e, Pandora.Pattern.Functor.Pointable.Pointable u, Pandora.Pattern.Functor.Bindable.Bindable u) => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Primary.Functor.Product.:*:) e) u)
+ Pandora.Paradigm.Inventory.Accumulator: instance Pandora.Pattern.Functor.Covariant.Covariant u => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Primary.Functor.Product.:*:) e) u)
+ Pandora.Paradigm.Inventory.Equipment: instance Pandora.Pattern.Functor.Covariant.Covariant u => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Primary.Functor.Product.:*:) e) u)
+ Pandora.Paradigm.Inventory.Equipment: instance Pandora.Pattern.Functor.Extendable.Extendable u => Pandora.Pattern.Functor.Extendable.Extendable (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Primary.Functor.Product.:*:) e) u)
+ Pandora.Paradigm.Inventory.Equipment: instance Pandora.Pattern.Functor.Extractable.Extractable u => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Primary.Functor.Product.:*:) e) u)
+ Pandora.Paradigm.Inventory.State: instance Pandora.Pattern.Functor.Bindable.Bindable u => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((->) s) ((Pandora.Paradigm.Primary.Functor.Product.:*:) s) u)
+ Pandora.Paradigm.Inventory.State: instance Pandora.Pattern.Functor.Bindable.Bindable u => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((->) s) ((Pandora.Paradigm.Primary.Functor.Product.:*:) s) u)
+ Pandora.Paradigm.Inventory.State: instance Pandora.Pattern.Functor.Covariant.Covariant u => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((->) s) ((Pandora.Paradigm.Primary.Functor.Product.:*:) s) u)
+ Pandora.Paradigm.Inventory.State: instance Pandora.Pattern.Functor.Monad.Monad u => Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((->) s) ((Pandora.Paradigm.Primary.Functor.Product.:*:) s) u)
+ Pandora.Paradigm.Inventory.State: instance Pandora.Pattern.Functor.Pointable.Pointable u => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((->) s) ((Pandora.Paradigm.Primary.Functor.Product.:*:) s) u)
+ Pandora.Paradigm.Inventory.Store: instance Pandora.Pattern.Functor.Covariant.Covariant u => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Primary.Functor.Product.:*:) p) ((->) p) u)
+ Pandora.Paradigm.Inventory.Store: instance Pandora.Pattern.Functor.Extendable.Extendable u => Pandora.Pattern.Functor.Extendable.Extendable (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Primary.Functor.Product.:*:) p) ((->) p) u)
+ Pandora.Paradigm.Inventory.Store: instance Pandora.Pattern.Functor.Extractable.Extractable u => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Controlflow.Joint.Schemes.TUT.TUT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant ((Pandora.Paradigm.Primary.Functor.Product.:*:) p) ((->) p) u)
+ Pandora.Paradigm.Primary.Functor: hush :: Conclusion e ~> Maybe
+ Pandora.Paradigm.Primary.Functor: left :: Wye ~> Maybe
+ Pandora.Paradigm.Primary.Functor: note :: e -> Maybe ~> Conclusion e
+ Pandora.Paradigm.Primary.Functor: right :: Wye ~> Maybe
+ Pandora.Paradigm.Primary.Functor: that :: Variation e a -> Maybe e
+ Pandora.Paradigm.Primary.Functor: this :: Variation e ~> Maybe
+ Pandora.Paradigm.Primary.Functor.Conclusion: Failure :: e -> Conclusion e a
+ Pandora.Paradigm.Primary.Functor.Conclusion: Success :: a -> Conclusion e a
+ Pandora.Paradigm.Primary.Functor.Conclusion: conclusion :: (e -> r) -> (a -> r) -> Conclusion e a -> r
+ Pandora.Paradigm.Primary.Functor.Conclusion: data Conclusion e a
+ Pandora.Paradigm.Primary.Functor.Conclusion: fail :: (e -> r) -> Conclusion e ~> Conclusion r
+ Pandora.Paradigm.Primary.Functor.Conclusion: failure :: Failable e t => e -> t a
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance (Pandora.Pattern.Functor.Pointable.Pointable u, Pandora.Pattern.Functor.Bindable.Bindable u) => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e) u)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance (Pandora.Pattern.Object.Chain.Chain e, Pandora.Pattern.Object.Chain.Chain a) => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e a)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance (Pandora.Pattern.Object.Semigroup.Semigroup e, Pandora.Pattern.Object.Semigroup.Semigroup a) => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e a)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance (Pandora.Pattern.Object.Setoid.Setoid e, Pandora.Pattern.Object.Setoid.Setoid a) => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e a)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Paradigm.Controlflow.Joint.Interpreted.Interpreted (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Paradigm.Controlflow.Joint.Transformer.Monadic.Monadic (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Pattern.Functor.Alternative.Alternative (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Pattern.Functor.Applicative.Applicative u => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e) u)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Pattern.Functor.Bivariant.Bivariant Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Pattern.Functor.Covariant.Covariant u => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e) u)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Pattern.Functor.Monad.Monad u => Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e) u)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Pattern.Functor.Pointable.Pointable u => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e) u)
+ Pandora.Paradigm.Primary.Functor.Conclusion: instance Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Primary.Functor.Conclusion.Conclusion e)
+ Pandora.Paradigm.Primary.Functor.Conclusion: type Failable e = Adaptable (Conclusion e)
+ Pandora.Paradigm.Primary.Functor.Constant: Constant :: a -> Constant a b
+ Pandora.Paradigm.Primary.Functor.Constant: instance Pandora.Pattern.Functor.Bivariant.Bivariant Pandora.Paradigm.Primary.Functor.Constant.Constant
+ Pandora.Paradigm.Primary.Functor.Constant: instance Pandora.Pattern.Functor.Contravariant.Contravariant (Pandora.Paradigm.Primary.Functor.Constant.Constant a)
+ Pandora.Paradigm.Primary.Functor.Constant: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Functor.Constant.Constant a)
+ Pandora.Paradigm.Primary.Functor.Constant: instance Pandora.Pattern.Functor.Invariant.Invariant (Pandora.Paradigm.Primary.Functor.Constant.Constant a)
+ Pandora.Paradigm.Primary.Functor.Constant: instance Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Primary.Functor.Constant.Constant a)
+ Pandora.Paradigm.Primary.Functor.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Chain.Chain a => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Primary.Functor.Constant.Constant a b)
+ Pandora.Paradigm.Primary.Functor.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Group.Group a => Pandora.Pattern.Object.Group.Group (Pandora.Paradigm.Primary.Functor.Constant.Constant a b)
+ Pandora.Paradigm.Primary.Functor.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Lattice.Lattice a => Pandora.Pattern.Object.Lattice.Lattice (Pandora.Paradigm.Primary.Functor.Constant.Constant a b)
+ Pandora.Paradigm.Primary.Functor.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Monoid.Monoid a => Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Primary.Functor.Constant.Constant a b)
+ Pandora.Paradigm.Primary.Functor.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Quasiring.Quasiring a => Pandora.Pattern.Object.Quasiring.Quasiring (Pandora.Paradigm.Primary.Functor.Constant.Constant a b)
+ Pandora.Paradigm.Primary.Functor.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Ringoid.Ringoid a => Pandora.Pattern.Object.Ringoid.Ringoid (Pandora.Paradigm.Primary.Functor.Constant.Constant a b)
+ Pandora.Paradigm.Primary.Functor.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Semigroup.Semigroup a => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Primary.Functor.Constant.Constant a b)
+ Pandora.Paradigm.Primary.Functor.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Semilattice.Infimum a => Pandora.Pattern.Object.Semilattice.Infimum (Pandora.Paradigm.Primary.Functor.Constant.Constant a b)
+ Pandora.Paradigm.Primary.Functor.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Semilattice.Supremum a => Pandora.Pattern.Object.Semilattice.Supremum (Pandora.Paradigm.Primary.Functor.Constant.Constant a b)
+ Pandora.Paradigm.Primary.Functor.Constant: instance forall k a (b :: k). Pandora.Pattern.Object.Setoid.Setoid a => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Primary.Functor.Constant.Constant a b)
+ Pandora.Paradigm.Primary.Functor.Constant: newtype Constant a b
+ Pandora.Paradigm.Primary.Functor.Edges: Connect :: a -> Edges a
+ Pandora.Paradigm.Primary.Functor.Edges: Empty :: Edges a
+ Pandora.Paradigm.Primary.Functor.Edges: Leap :: a -> Edges a
+ Pandora.Paradigm.Primary.Functor.Edges: Overlay :: a -> Edges a
+ Pandora.Paradigm.Primary.Functor.Edges: data Edges a
+ Pandora.Paradigm.Primary.Functor.Edges: edges :: r -> (a -> r) -> (a -> r) -> (a -> r) -> Edges a -> r
+ Pandora.Paradigm.Primary.Functor.Edges: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Primary.Functor.Edges.Edges
+ Pandora.Paradigm.Primary.Functor.Edges: instance Pandora.Pattern.Functor.Traversable.Traversable Pandora.Paradigm.Primary.Functor.Edges.Edges
+ Pandora.Paradigm.Primary.Functor.Endo: Endo :: (a -> a) -> Endo a
+ Pandora.Paradigm.Primary.Functor.Endo: [endo] :: Endo a -> a -> a
+ Pandora.Paradigm.Primary.Functor.Endo: instance Pandora.Pattern.Functor.Invariant.Invariant Pandora.Paradigm.Primary.Functor.Endo.Endo
+ Pandora.Paradigm.Primary.Functor.Endo: instance Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Primary.Functor.Endo.Endo a)
+ Pandora.Paradigm.Primary.Functor.Endo: instance Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Primary.Functor.Endo.Endo a)
+ Pandora.Paradigm.Primary.Functor.Endo: newtype Endo a
+ Pandora.Paradigm.Primary.Functor.Fix: Fix :: t (Fix t) -> Fix t
+ Pandora.Paradigm.Primary.Functor.Fix: [unfix] :: Fix t -> t (Fix t)
+ Pandora.Paradigm.Primary.Functor.Fix: ana :: Covariant t => (a |-> t) -> a -> Fix t
+ Pandora.Paradigm.Primary.Functor.Fix: cata :: Covariant t => (a <-| t) -> Fix t -> a
+ Pandora.Paradigm.Primary.Functor.Fix: hylo :: Covariant t => (b <-| t) -> (a |-> t) -> a -> b
+ Pandora.Paradigm.Primary.Functor.Fix: newtype Fix t
+ Pandora.Paradigm.Primary.Functor.Identity: Identity :: a -> Identity a
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Functor.Adjoint.Adjoint Pandora.Paradigm.Primary.Functor.Identity.Identity Pandora.Paradigm.Primary.Functor.Identity.Identity
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Functor.Applicative.Applicative Pandora.Paradigm.Primary.Functor.Identity.Identity
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Functor.Bindable.Bindable Pandora.Paradigm.Primary.Functor.Identity.Identity
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Functor.Comonad.Comonad Pandora.Paradigm.Primary.Functor.Identity.Identity
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Primary.Functor.Identity.Identity
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Functor.Distributive.Distributive Pandora.Paradigm.Primary.Functor.Identity.Identity
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Functor.Extendable.Extendable Pandora.Paradigm.Primary.Functor.Identity.Identity
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Functor.Extractable.Extractable Pandora.Paradigm.Primary.Functor.Identity.Identity
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Functor.Monad.Monad Pandora.Paradigm.Primary.Functor.Identity.Identity
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Functor.Pointable.Pointable Pandora.Paradigm.Primary.Functor.Identity.Identity
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Functor.Traversable.Traversable Pandora.Paradigm.Primary.Functor.Identity.Identity
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Object.Chain.Chain a => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Primary.Functor.Identity.Identity a)
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Object.Group.Group a => Pandora.Pattern.Object.Group.Group (Pandora.Paradigm.Primary.Functor.Identity.Identity a)
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Object.Lattice.Lattice a => Pandora.Pattern.Object.Lattice.Lattice (Pandora.Paradigm.Primary.Functor.Identity.Identity a)
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Object.Monoid.Monoid a => Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Primary.Functor.Identity.Identity a)
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Object.Quasiring.Quasiring a => Pandora.Pattern.Object.Quasiring.Quasiring (Pandora.Paradigm.Primary.Functor.Identity.Identity a)
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Object.Ringoid.Ringoid a => Pandora.Pattern.Object.Ringoid.Ringoid (Pandora.Paradigm.Primary.Functor.Identity.Identity a)
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Object.Semigroup.Semigroup a => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Primary.Functor.Identity.Identity a)
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Object.Semilattice.Infimum a => Pandora.Pattern.Object.Semilattice.Infimum (Pandora.Paradigm.Primary.Functor.Identity.Identity a)
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Object.Semilattice.Supremum a => Pandora.Pattern.Object.Semilattice.Supremum (Pandora.Paradigm.Primary.Functor.Identity.Identity a)
+ Pandora.Paradigm.Primary.Functor.Identity: instance Pandora.Pattern.Object.Setoid.Setoid a => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Primary.Functor.Identity.Identity a)
+ Pandora.Paradigm.Primary.Functor.Identity: newtype Identity a
+ Pandora.Paradigm.Primary.Functor.Maybe: Just :: a -> Maybe a
+ Pandora.Paradigm.Primary.Functor.Maybe: Nothing :: Maybe a
+ Pandora.Paradigm.Primary.Functor.Maybe: data Maybe a
+ Pandora.Paradigm.Primary.Functor.Maybe: instance (Pandora.Pattern.Functor.Pointable.Pointable u, Pandora.Pattern.Functor.Bindable.Bindable u) => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Primary.Functor.Maybe.Maybe u)
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Paradigm.Controlflow.Joint.Interpreted.Interpreted Pandora.Paradigm.Primary.Functor.Maybe.Maybe
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Paradigm.Controlflow.Joint.Transformer.Monadic.Monadic Pandora.Paradigm.Primary.Functor.Maybe.Maybe
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Functor.Alternative.Alternative Pandora.Paradigm.Primary.Functor.Maybe.Maybe
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Functor.Applicative.Applicative Pandora.Paradigm.Primary.Functor.Maybe.Maybe
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Functor.Applicative.Applicative u => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Primary.Functor.Maybe.Maybe u)
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Functor.Avoidable.Avoidable Pandora.Paradigm.Primary.Functor.Maybe.Maybe
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Functor.Bindable.Bindable Pandora.Paradigm.Primary.Functor.Maybe.Maybe
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Primary.Functor.Maybe.Maybe
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Functor.Covariant.Covariant u => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Primary.Functor.Maybe.Maybe u)
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Functor.Monad.Monad Pandora.Paradigm.Primary.Functor.Maybe.Maybe
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Functor.Monad.Monad u => Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Primary.Functor.Maybe.Maybe u)
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Functor.Pointable.Pointable Pandora.Paradigm.Primary.Functor.Maybe.Maybe
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Functor.Pointable.Pointable u => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Controlflow.Joint.Schemes.UT.UT Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Primary.Functor.Maybe.Maybe u)
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Functor.Traversable.Traversable Pandora.Paradigm.Primary.Functor.Maybe.Maybe
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Object.Chain.Chain a => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Primary.Functor.Maybe.Maybe a)
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Object.Lattice.Lattice a => Pandora.Pattern.Object.Lattice.Lattice (Pandora.Paradigm.Primary.Functor.Maybe.Maybe a)
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Object.Semigroup.Semigroup a => Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Primary.Functor.Maybe.Maybe a)
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Object.Semigroup.Semigroup a => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Primary.Functor.Maybe.Maybe a)
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Object.Semilattice.Infimum a => Pandora.Pattern.Object.Semilattice.Infimum (Pandora.Paradigm.Primary.Functor.Maybe.Maybe a)
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Object.Semilattice.Supremum a => Pandora.Pattern.Object.Semilattice.Supremum (Pandora.Paradigm.Primary.Functor.Maybe.Maybe a)
+ Pandora.Paradigm.Primary.Functor.Maybe: instance Pandora.Pattern.Object.Setoid.Setoid a => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Primary.Functor.Maybe.Maybe a)
+ Pandora.Paradigm.Primary.Functor.Maybe: maybe :: b -> (a -> b) -> Maybe a -> b
+ Pandora.Paradigm.Primary.Functor.Maybe: nothing :: Optional t => t a
+ Pandora.Paradigm.Primary.Functor.Maybe: type Optional = Adaptable Maybe
+ Pandora.Paradigm.Primary.Functor.Predicate: Predicate :: (a -> Boolean) -> Predicate a
+ Pandora.Paradigm.Primary.Functor.Predicate: [predicate] :: Predicate a -> a -> Boolean
+ Pandora.Paradigm.Primary.Functor.Predicate: instance Pandora.Pattern.Functor.Contravariant.Contravariant Pandora.Paradigm.Primary.Functor.Predicate.Predicate
+ Pandora.Paradigm.Primary.Functor.Predicate: instance Pandora.Pattern.Functor.Determinable.Determinable Pandora.Paradigm.Primary.Functor.Predicate.Predicate
+ Pandora.Paradigm.Primary.Functor.Predicate: newtype Predicate a
+ Pandora.Paradigm.Primary.Functor.Product: (:*:) :: a -> b -> Product a b
+ Pandora.Paradigm.Primary.Functor.Product: attached :: (a :*: b) -> a
+ Pandora.Paradigm.Primary.Functor.Product: curry :: ((a :*: b) -> c) -> a -> b -> c
+ Pandora.Paradigm.Primary.Functor.Product: data Product a b
+ Pandora.Paradigm.Primary.Functor.Product: delta :: a -> a :*: a
+ Pandora.Paradigm.Primary.Functor.Product: infixr 1 :*:
+ Pandora.Paradigm.Primary.Functor.Product: instance (Pandora.Pattern.Object.Group.Group a, Pandora.Pattern.Object.Group.Group b) => Pandora.Pattern.Object.Group.Group (Pandora.Paradigm.Primary.Functor.Product.Product a b)
+ Pandora.Paradigm.Primary.Functor.Product: instance (Pandora.Pattern.Object.Lattice.Lattice a, Pandora.Pattern.Object.Lattice.Lattice b) => Pandora.Pattern.Object.Lattice.Lattice (Pandora.Paradigm.Primary.Functor.Product.Product a b)
+ Pandora.Paradigm.Primary.Functor.Product: instance (Pandora.Pattern.Object.Monoid.Monoid a, Pandora.Pattern.Object.Monoid.Monoid b) => Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Primary.Functor.Product.Product a b)
+ Pandora.Paradigm.Primary.Functor.Product: instance (Pandora.Pattern.Object.Quasiring.Quasiring a, Pandora.Pattern.Object.Quasiring.Quasiring b) => Pandora.Pattern.Object.Quasiring.Quasiring (Pandora.Paradigm.Primary.Functor.Product.Product a b)
+ Pandora.Paradigm.Primary.Functor.Product: instance (Pandora.Pattern.Object.Ringoid.Ringoid a, Pandora.Pattern.Object.Ringoid.Ringoid b) => Pandora.Pattern.Object.Ringoid.Ringoid (Pandora.Paradigm.Primary.Functor.Product.Product a b)
+ Pandora.Paradigm.Primary.Functor.Product: instance (Pandora.Pattern.Object.Semigroup.Semigroup a, Pandora.Pattern.Object.Semigroup.Semigroup b) => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Primary.Functor.Product.Product a b)
+ Pandora.Paradigm.Primary.Functor.Product: instance (Pandora.Pattern.Object.Semilattice.Infimum a, Pandora.Pattern.Object.Semilattice.Infimum b) => Pandora.Pattern.Object.Semilattice.Infimum (Pandora.Paradigm.Primary.Functor.Product.Product a b)
+ Pandora.Paradigm.Primary.Functor.Product: instance (Pandora.Pattern.Object.Semilattice.Supremum a, Pandora.Pattern.Object.Semilattice.Supremum b) => Pandora.Pattern.Object.Semilattice.Supremum (Pandora.Paradigm.Primary.Functor.Product.Product a b)
+ Pandora.Paradigm.Primary.Functor.Product: instance (Pandora.Pattern.Object.Setoid.Setoid a, Pandora.Pattern.Object.Setoid.Setoid b) => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Primary.Functor.Product.Product a b)
+ Pandora.Paradigm.Primary.Functor.Product: instance Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Primary.Functor.Product.Product a) ((->) a)
+ Pandora.Paradigm.Primary.Functor.Product: instance Pandora.Pattern.Functor.Bivariant.Bivariant Pandora.Paradigm.Primary.Functor.Product.Product
+ Pandora.Paradigm.Primary.Functor.Product: instance Pandora.Pattern.Functor.Comonad.Comonad (Pandora.Paradigm.Primary.Functor.Product.Product a)
+ Pandora.Paradigm.Primary.Functor.Product: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Functor.Product.Product a)
+ Pandora.Paradigm.Primary.Functor.Product: instance Pandora.Pattern.Functor.Extendable.Extendable (Pandora.Paradigm.Primary.Functor.Product.Product a)
+ Pandora.Paradigm.Primary.Functor.Product: instance Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Primary.Functor.Product.Product a)
+ Pandora.Paradigm.Primary.Functor.Product: instance Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Primary.Functor.Product.Product a)
+ Pandora.Paradigm.Primary.Functor.Product: swap :: (a :*: b) -> b :*: a
+ Pandora.Paradigm.Primary.Functor.Product: type (:*:) = Product
+ Pandora.Paradigm.Primary.Functor.Product: uncurry :: (a -> b -> c) -> (a :*: b) -> c
+ Pandora.Paradigm.Primary.Functor.Proxy: Proxy :: Proxy a
+ Pandora.Paradigm.Primary.Functor.Proxy: data Proxy a
+ Pandora.Paradigm.Primary.Functor.Proxy: instance Pandora.Pattern.Functor.Alternative.Alternative Pandora.Paradigm.Primary.Functor.Proxy.Proxy
+ Pandora.Paradigm.Primary.Functor.Proxy: instance Pandora.Pattern.Functor.Applicative.Applicative Pandora.Paradigm.Primary.Functor.Proxy.Proxy
+ Pandora.Paradigm.Primary.Functor.Proxy: instance Pandora.Pattern.Functor.Bindable.Bindable Pandora.Paradigm.Primary.Functor.Proxy.Proxy
+ Pandora.Paradigm.Primary.Functor.Proxy: instance Pandora.Pattern.Functor.Contravariant.Contravariant Pandora.Paradigm.Primary.Functor.Proxy.Proxy
+ Pandora.Paradigm.Primary.Functor.Proxy: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Primary.Functor.Proxy.Proxy
+ Pandora.Paradigm.Primary.Functor.Proxy: instance Pandora.Pattern.Functor.Distributive.Distributive Pandora.Paradigm.Primary.Functor.Proxy.Proxy
+ Pandora.Paradigm.Primary.Functor.Proxy: instance Pandora.Pattern.Functor.Extendable.Extendable Pandora.Paradigm.Primary.Functor.Proxy.Proxy
+ Pandora.Paradigm.Primary.Functor.Proxy: instance Pandora.Pattern.Functor.Monad.Monad Pandora.Paradigm.Primary.Functor.Proxy.Proxy
+ Pandora.Paradigm.Primary.Functor.Proxy: instance Pandora.Pattern.Functor.Pointable.Pointable Pandora.Paradigm.Primary.Functor.Proxy.Proxy
+ Pandora.Paradigm.Primary.Functor.Tagged: Tag :: a -> Tagged tag a
+ Pandora.Paradigm.Primary.Functor.Tagged: infixr 0 :#
+ Pandora.Paradigm.Primary.Functor.Tagged: instance Pandora.Pattern.Functor.Bivariant.Bivariant Pandora.Paradigm.Primary.Functor.Tagged.Tagged
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Comonad.Comonad (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Distributive.Distributive (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Extendable.Extendable (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k (tag :: k). Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Chain.Chain a => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag a)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Group.Group a => Pandora.Pattern.Object.Group.Group (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag a)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Lattice.Lattice a => Pandora.Pattern.Object.Lattice.Lattice (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag a)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Monoid.Monoid a => Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag a)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Quasiring.Quasiring a => Pandora.Pattern.Object.Quasiring.Quasiring (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag a)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Ringoid.Ringoid a => Pandora.Pattern.Object.Ringoid.Ringoid (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag a)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Semigroup.Semigroup a => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag a)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Semilattice.Infimum a => Pandora.Pattern.Object.Semilattice.Infimum (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag a)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Semilattice.Supremum a => Pandora.Pattern.Object.Semilattice.Supremum (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag a)
+ Pandora.Paradigm.Primary.Functor.Tagged: instance forall k a (tag :: k). Pandora.Pattern.Object.Setoid.Setoid a => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Primary.Functor.Tagged.Tagged tag a)
+ Pandora.Paradigm.Primary.Functor.Tagged: newtype Tagged tag a
+ Pandora.Paradigm.Primary.Functor.Tagged: retag :: Tagged old ~> Tagged new
+ Pandora.Paradigm.Primary.Functor.Tagged: tagself :: a |-> Tagged a
+ Pandora.Paradigm.Primary.Functor.Tagged: type (:#) tag = Tagged tag
+ Pandora.Paradigm.Primary.Functor.Validation: Flaws :: e -> Validation e a
+ Pandora.Paradigm.Primary.Functor.Validation: Validated :: a -> Validation e a
+ Pandora.Paradigm.Primary.Functor.Validation: data Validation e a
+ Pandora.Paradigm.Primary.Functor.Validation: instance (Pandora.Pattern.Object.Chain.Chain e, Pandora.Pattern.Object.Chain.Chain a) => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Primary.Functor.Validation.Validation e a)
+ Pandora.Paradigm.Primary.Functor.Validation: instance (Pandora.Pattern.Object.Semigroup.Semigroup e, Pandora.Pattern.Object.Semigroup.Semigroup a) => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Primary.Functor.Validation.Validation e a)
+ Pandora.Paradigm.Primary.Functor.Validation: instance (Pandora.Pattern.Object.Setoid.Setoid e, Pandora.Pattern.Object.Setoid.Setoid a) => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Primary.Functor.Validation.Validation e a)
+ Pandora.Paradigm.Primary.Functor.Validation: instance Pandora.Pattern.Functor.Alternative.Alternative (Pandora.Paradigm.Primary.Functor.Validation.Validation e)
+ Pandora.Paradigm.Primary.Functor.Validation: instance Pandora.Pattern.Functor.Bivariant.Bivariant Pandora.Paradigm.Primary.Functor.Validation.Validation
+ Pandora.Paradigm.Primary.Functor.Validation: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Functor.Validation.Validation e)
+ Pandora.Paradigm.Primary.Functor.Validation: instance Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Primary.Functor.Validation.Validation e)
+ Pandora.Paradigm.Primary.Functor.Validation: instance Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Primary.Functor.Validation.Validation e)
+ Pandora.Paradigm.Primary.Functor.Validation: instance Pandora.Pattern.Object.Semigroup.Semigroup e => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Primary.Functor.Validation.Validation e)
+ Pandora.Paradigm.Primary.Functor.Variation: That :: e -> Variation e a
+ Pandora.Paradigm.Primary.Functor.Variation: These :: e -> a -> Variation e a
+ Pandora.Paradigm.Primary.Functor.Variation: This :: a -> Variation e a
+ Pandora.Paradigm.Primary.Functor.Variation: data Variation e a
+ Pandora.Paradigm.Primary.Functor.Variation: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Functor.Variation.Variation e)
+ Pandora.Paradigm.Primary.Functor.Variation: instance Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Primary.Functor.Variation.Variation e)
+ Pandora.Paradigm.Primary.Functor.Variation: instance Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Primary.Functor.Variation.Variation e)
+ Pandora.Paradigm.Primary.Functor.Variation: variation :: (a -> r) -> (e -> r) -> (e -> a -> r) -> Variation e a -> r
+ Pandora.Paradigm.Primary.Functor.Wye: Both :: a -> a -> Wye a
+ Pandora.Paradigm.Primary.Functor.Wye: End :: Wye a
+ Pandora.Paradigm.Primary.Functor.Wye: Left :: a -> Wye a
+ Pandora.Paradigm.Primary.Functor.Wye: Right :: a -> Wye a
+ Pandora.Paradigm.Primary.Functor.Wye: data Wye a
+ Pandora.Paradigm.Primary.Functor.Wye: instance Pandora.Pattern.Functor.Covariant.Covariant Pandora.Paradigm.Primary.Functor.Wye.Wye
+ Pandora.Paradigm.Primary.Functor.Wye: instance Pandora.Pattern.Functor.Traversable.Traversable Pandora.Paradigm.Primary.Functor.Wye.Wye
+ Pandora.Paradigm.Primary.Functor.Wye: wye :: r -> (a -> r) -> (a -> r) -> (a -> a -> r) -> Wye a -> r
+ Pandora.Paradigm.Primary.Transformer.Backwards: Backwards :: t a -> Backwards t a
+ Pandora.Paradigm.Primary.Transformer.Backwards: instance Pandora.Paradigm.Controlflow.Joint.Interpreted.Interpreted (Pandora.Paradigm.Primary.Transformer.Backwards.Backwards t)
+ Pandora.Paradigm.Primary.Transformer.Backwards: instance Pandora.Pattern.Functor.Applicative.Applicative t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Primary.Transformer.Backwards.Backwards t)
+ Pandora.Paradigm.Primary.Transformer.Backwards: instance Pandora.Pattern.Functor.Contravariant.Contravariant t => Pandora.Pattern.Functor.Contravariant.Contravariant (Pandora.Paradigm.Primary.Transformer.Backwards.Backwards t)
+ Pandora.Paradigm.Primary.Transformer.Backwards: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Transformer.Backwards.Backwards t)
+ Pandora.Paradigm.Primary.Transformer.Backwards: instance Pandora.Pattern.Functor.Distributive.Distributive t => Pandora.Pattern.Functor.Distributive.Distributive (Pandora.Paradigm.Primary.Transformer.Backwards.Backwards t)
+ Pandora.Paradigm.Primary.Transformer.Backwards: instance Pandora.Pattern.Functor.Extractable.Extractable t => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Primary.Transformer.Backwards.Backwards t)
+ Pandora.Paradigm.Primary.Transformer.Backwards: instance Pandora.Pattern.Functor.Pointable.Pointable t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Primary.Transformer.Backwards.Backwards t)
+ Pandora.Paradigm.Primary.Transformer.Backwards: instance Pandora.Pattern.Functor.Traversable.Traversable t => Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Primary.Transformer.Backwards.Backwards t)
+ Pandora.Paradigm.Primary.Transformer.Backwards: instance Pandora.Pattern.Transformer.Hoistable.Hoistable Pandora.Paradigm.Primary.Transformer.Backwards.Backwards
+ Pandora.Paradigm.Primary.Transformer.Backwards: instance Pandora.Pattern.Transformer.Liftable.Liftable Pandora.Paradigm.Primary.Transformer.Backwards.Backwards
+ Pandora.Paradigm.Primary.Transformer.Backwards: instance Pandora.Pattern.Transformer.Lowerable.Lowerable Pandora.Paradigm.Primary.Transformer.Backwards.Backwards
+ Pandora.Paradigm.Primary.Transformer.Backwards: newtype Backwards t a
+ Pandora.Paradigm.Primary.Transformer.Construction: Construct :: a -> ((t :. Construction t) := a) -> Construction t a
+ Pandora.Paradigm.Primary.Transformer.Construction: coiterate :: Covariant t => (a |-> t) -> a |-> Construction t
+ Pandora.Paradigm.Primary.Transformer.Construction: data Construction t a
+ Pandora.Paradigm.Primary.Transformer.Construction: deconstruct :: Construction t a -> (t :. Construction t) a
+ Pandora.Paradigm.Primary.Transformer.Construction: instance (Pandora.Pattern.Functor.Applicative.Applicative t, Pandora.Pattern.Functor.Applicative.Applicative u) => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant u (Pandora.Paradigm.Primary.Transformer.Construction.Construction t))
+ Pandora.Paradigm.Primary.Transformer.Construction: instance (Pandora.Pattern.Functor.Avoidable.Avoidable t, Pandora.Pattern.Functor.Alternative.Alternative t) => Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Primary.Transformer.Construction.Construction t)
+ Pandora.Paradigm.Primary.Transformer.Construction: instance (Pandora.Pattern.Functor.Avoidable.Avoidable t, Pandora.Pattern.Functor.Pointable.Pointable u) => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant u (Pandora.Paradigm.Primary.Transformer.Construction.Construction t))
+ Pandora.Paradigm.Primary.Transformer.Construction: instance (Pandora.Pattern.Functor.Covariant.Covariant t, Pandora.Pattern.Functor.Alternative.Alternative u) => Pandora.Pattern.Functor.Alternative.Alternative (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant u (Pandora.Paradigm.Primary.Transformer.Construction.Construction t))
+ Pandora.Paradigm.Primary.Transformer.Construction: instance (Pandora.Pattern.Functor.Covariant.Covariant t, Pandora.Pattern.Functor.Avoidable.Avoidable u) => Pandora.Pattern.Functor.Avoidable.Avoidable (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant u (Pandora.Paradigm.Primary.Transformer.Construction.Construction t))
+ Pandora.Paradigm.Primary.Transformer.Construction: instance (Pandora.Pattern.Functor.Covariant.Covariant t, Pandora.Pattern.Functor.Covariant.Covariant u) => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant u (Pandora.Paradigm.Primary.Transformer.Construction.Construction t))
+ Pandora.Paradigm.Primary.Transformer.Construction: instance (Pandora.Pattern.Functor.Traversable.Traversable t, Pandora.Pattern.Functor.Traversable.Traversable u) => Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Controlflow.Joint.Schemes.TU.TU Pandora.Pattern.Functor.Covariant.Covariant Pandora.Pattern.Functor.Covariant.Covariant u (Pandora.Paradigm.Primary.Transformer.Construction.Construction t))
+ Pandora.Paradigm.Primary.Transformer.Construction: instance (Pandora.Pattern.Object.Monoid.Monoid a, forall b. Pandora.Pattern.Object.Semigroup.Semigroup b => Pandora.Pattern.Object.Monoid.Monoid (t b)) => Pandora.Pattern.Object.Monoid.Monoid (Pandora.Paradigm.Primary.Transformer.Construction.Construction t a)
+ Pandora.Paradigm.Primary.Transformer.Construction: instance (Pandora.Pattern.Object.Semigroup.Semigroup a, forall b. Pandora.Pattern.Object.Semigroup.Semigroup b => Pandora.Pattern.Object.Semigroup.Semigroup (t b)) => Pandora.Pattern.Object.Semigroup.Semigroup (Pandora.Paradigm.Primary.Transformer.Construction.Construction t a)
+ Pandora.Paradigm.Primary.Transformer.Construction: instance (Pandora.Pattern.Object.Setoid.Setoid a, forall b. Pandora.Pattern.Object.Setoid.Setoid b => Pandora.Pattern.Object.Setoid.Setoid (t b)) => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Primary.Transformer.Construction.Construction t a)
+ Pandora.Paradigm.Primary.Transformer.Construction: instance Pandora.Pattern.Functor.Alternative.Alternative t => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Primary.Transformer.Construction.Construction t)
+ Pandora.Paradigm.Primary.Transformer.Construction: instance Pandora.Pattern.Functor.Applicative.Applicative t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Primary.Transformer.Construction.Construction t)
+ Pandora.Paradigm.Primary.Transformer.Construction: instance Pandora.Pattern.Functor.Avoidable.Avoidable t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Primary.Transformer.Construction.Construction t)
+ Pandora.Paradigm.Primary.Transformer.Construction: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Comonad.Comonad (Pandora.Paradigm.Primary.Transformer.Construction.Construction t)
+ Pandora.Paradigm.Primary.Transformer.Construction: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Transformer.Construction.Construction t)
+ Pandora.Paradigm.Primary.Transformer.Construction: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Extendable.Extendable (Pandora.Paradigm.Primary.Transformer.Construction.Construction t)
+ Pandora.Paradigm.Primary.Transformer.Construction: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Primary.Transformer.Construction.Construction t)
+ Pandora.Paradigm.Primary.Transformer.Construction: instance Pandora.Pattern.Functor.Traversable.Traversable t => Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Primary.Transformer.Construction.Construction t)
+ Pandora.Paradigm.Primary.Transformer.Construction: instance Pandora.Pattern.Transformer.Lowerable.Lowerable Pandora.Paradigm.Primary.Transformer.Construction.Construction
+ Pandora.Paradigm.Primary.Transformer.Construction: section :: Comonad t => t ~> Construction t
+ Pandora.Paradigm.Primary.Transformer.Continuation: Continuation :: ((((->) ::|:. a) :. t) := r) -> Continuation r t a
+ Pandora.Paradigm.Primary.Transformer.Continuation: [continue] :: Continuation r t a -> (((->) ::|:. a) :. t) := r
+ Pandora.Paradigm.Primary.Transformer.Continuation: cwcc :: ((a -> Continuation r t b) -> Continuation r t a) -> Continuation r t a
+ Pandora.Paradigm.Primary.Transformer.Continuation: instance (forall (u :: * -> *). Pandora.Pattern.Functor.Bindable.Bindable u) => Pandora.Pattern.Transformer.Liftable.Liftable (Pandora.Paradigm.Primary.Transformer.Continuation.Continuation r)
+ Pandora.Paradigm.Primary.Transformer.Continuation: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Primary.Transformer.Continuation.Continuation r t)
+ Pandora.Paradigm.Primary.Transformer.Continuation: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Primary.Transformer.Continuation.Continuation r t)
+ Pandora.Paradigm.Primary.Transformer.Continuation: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Transformer.Continuation.Continuation r t)
+ Pandora.Paradigm.Primary.Transformer.Continuation: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Primary.Transformer.Continuation.Continuation r t)
+ Pandora.Paradigm.Primary.Transformer.Continuation: instance Pandora.Pattern.Functor.Monad.Monad t => Pandora.Pattern.Functor.Monad.Monad (Pandora.Paradigm.Primary.Transformer.Continuation.Continuation r t)
+ Pandora.Paradigm.Primary.Transformer.Continuation: newtype Continuation r t a
+ Pandora.Paradigm.Primary.Transformer.Continuation: reset :: (forall u. Bindable u, Bindable t, Pointable t) => Continuation r t r -> Continuation s t r
+ Pandora.Paradigm.Primary.Transformer.Continuation: shift :: Pointable t => ((a -> t r) -> Continuation r t r) -> Continuation r t a
+ Pandora.Paradigm.Primary.Transformer.Instruction: Enter :: a -> Instruction t a
+ Pandora.Paradigm.Primary.Transformer.Instruction: Instruct :: ((t :. Instruction t) := a) -> Instruction t a
+ Pandora.Paradigm.Primary.Transformer.Instruction: data Instruction t a
+ Pandora.Paradigm.Primary.Transformer.Instruction: instance Pandora.Pattern.Functor.Alternative.Alternative t => Pandora.Pattern.Functor.Alternative.Alternative (Pandora.Paradigm.Primary.Transformer.Instruction.Instruction t)
+ Pandora.Paradigm.Primary.Transformer.Instruction: instance Pandora.Pattern.Functor.Avoidable.Avoidable t => Pandora.Pattern.Functor.Avoidable.Avoidable (Pandora.Paradigm.Primary.Transformer.Instruction.Instruction t)
+ Pandora.Paradigm.Primary.Transformer.Instruction: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Primary.Transformer.Instruction.Instruction t)
+ Pandora.Paradigm.Primary.Transformer.Instruction: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Bindable.Bindable (Pandora.Paradigm.Primary.Transformer.Instruction.Instruction t)
+ Pandora.Paradigm.Primary.Transformer.Instruction: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Transformer.Instruction.Instruction t)
+ Pandora.Paradigm.Primary.Transformer.Instruction: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Primary.Transformer.Instruction.Instruction t)
+ Pandora.Paradigm.Primary.Transformer.Instruction: instance Pandora.Pattern.Functor.Traversable.Traversable t => Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Primary.Transformer.Instruction.Instruction t)
+ Pandora.Paradigm.Primary.Transformer.Instruction: instance Pandora.Pattern.Transformer.Liftable.Liftable Pandora.Paradigm.Primary.Transformer.Instruction.Instruction
+ Pandora.Paradigm.Primary.Transformer.Jack: It :: a -> Jack t a
+ Pandora.Paradigm.Primary.Transformer.Jack: Other :: t a -> Jack t a
+ Pandora.Paradigm.Primary.Transformer.Jack: data Jack t a
+ Pandora.Paradigm.Primary.Transformer.Jack: instance (Pandora.Pattern.Object.Chain.Chain a, Pandora.Pattern.Object.Chain.Chain (t a)) => Pandora.Pattern.Object.Chain.Chain (Pandora.Paradigm.Primary.Transformer.Jack.Jack t a)
+ Pandora.Paradigm.Primary.Transformer.Jack: instance (Pandora.Pattern.Object.Setoid.Setoid a, Pandora.Pattern.Object.Setoid.Setoid (t a)) => Pandora.Pattern.Object.Setoid.Setoid (Pandora.Paradigm.Primary.Transformer.Jack.Jack t a)
+ Pandora.Paradigm.Primary.Transformer.Jack: instance Pandora.Pattern.Functor.Alternative.Alternative t => Pandora.Pattern.Functor.Alternative.Alternative (Pandora.Paradigm.Primary.Transformer.Jack.Jack t)
+ Pandora.Paradigm.Primary.Transformer.Jack: instance Pandora.Pattern.Functor.Applicative.Applicative t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Primary.Transformer.Jack.Jack t)
+ Pandora.Paradigm.Primary.Transformer.Jack: instance Pandora.Pattern.Functor.Avoidable.Avoidable t => Pandora.Pattern.Functor.Avoidable.Avoidable (Pandora.Paradigm.Primary.Transformer.Jack.Jack t)
+ Pandora.Paradigm.Primary.Transformer.Jack: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Transformer.Jack.Jack t)
+ Pandora.Paradigm.Primary.Transformer.Jack: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Primary.Transformer.Jack.Jack t)
+ Pandora.Paradigm.Primary.Transformer.Jack: instance Pandora.Pattern.Functor.Distributive.Distributive t => Pandora.Pattern.Functor.Distributive.Distributive (Pandora.Paradigm.Primary.Transformer.Jack.Jack t)
+ Pandora.Paradigm.Primary.Transformer.Jack: instance Pandora.Pattern.Functor.Extractable.Extractable t => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Primary.Transformer.Jack.Jack t)
+ Pandora.Paradigm.Primary.Transformer.Jack: instance Pandora.Pattern.Functor.Traversable.Traversable t => Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Primary.Transformer.Jack.Jack t)
+ Pandora.Paradigm.Primary.Transformer.Jack: instance Pandora.Pattern.Transformer.Liftable.Liftable Pandora.Paradigm.Primary.Transformer.Jack.Jack
+ Pandora.Paradigm.Primary.Transformer.Jack: jack :: (a -> r) -> (t a -> r) -> Jack t a -> r
+ Pandora.Paradigm.Primary.Transformer.Jet: Jet :: a -> Jet t (t a) -> Jet t a
+ Pandora.Paradigm.Primary.Transformer.Jet: data Jet t a
+ Pandora.Paradigm.Primary.Transformer.Jet: instance (forall (u :: * -> *). Pandora.Pattern.Functor.Avoidable.Avoidable u) => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Primary.Transformer.Jet.Jet t)
+ Pandora.Paradigm.Primary.Transformer.Jet: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Transformer.Jet.Jet t)
+ Pandora.Paradigm.Primary.Transformer.Jet: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Primary.Transformer.Jet.Jet t)
+ Pandora.Paradigm.Primary.Transformer.Jet: instance Pandora.Pattern.Functor.Traversable.Traversable t => Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Primary.Transformer.Jet.Jet t)
+ Pandora.Paradigm.Primary.Transformer.Kan: data family Kan (v :: * -> k) (t :: * -> *) (u :: * -> *) b a
+ Pandora.Paradigm.Primary.Transformer.Kan: instance Pandora.Paradigm.Controlflow.Joint.Interpreted.Interpreted (Pandora.Paradigm.Primary.Transformer.Kan.Kan 'Pandora.Paradigm.Primary.Functor.Wye.Left t u b)
+ Pandora.Paradigm.Primary.Transformer.Kan: instance Pandora.Paradigm.Controlflow.Joint.Interpreted.Interpreted (Pandora.Paradigm.Primary.Transformer.Kan.Kan 'Pandora.Paradigm.Primary.Functor.Wye.Right t u b)
+ Pandora.Paradigm.Primary.Transformer.Kan: instance Pandora.Pattern.Functor.Contravariant.Contravariant (Pandora.Paradigm.Primary.Transformer.Kan.Kan 'Pandora.Paradigm.Primary.Functor.Wye.Left t u b)
+ Pandora.Paradigm.Primary.Transformer.Kan: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Transformer.Kan.Kan 'Pandora.Paradigm.Primary.Functor.Wye.Right t u b)
+ Pandora.Paradigm.Primary.Transformer.Reverse: Reverse :: t a -> Reverse t a
+ Pandora.Paradigm.Primary.Transformer.Reverse: instance Pandora.Paradigm.Controlflow.Joint.Interpreted.Interpreted (Pandora.Paradigm.Primary.Transformer.Reverse.Reverse t)
+ Pandora.Paradigm.Primary.Transformer.Reverse: instance Pandora.Pattern.Functor.Applicative.Applicative t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Primary.Transformer.Reverse.Reverse t)
+ Pandora.Paradigm.Primary.Transformer.Reverse: instance Pandora.Pattern.Functor.Contravariant.Contravariant t => Pandora.Pattern.Functor.Contravariant.Contravariant (Pandora.Paradigm.Primary.Transformer.Reverse.Reverse t)
+ Pandora.Paradigm.Primary.Transformer.Reverse: instance Pandora.Pattern.Functor.Covariant.Covariant t => Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Transformer.Reverse.Reverse t)
+ Pandora.Paradigm.Primary.Transformer.Reverse: instance Pandora.Pattern.Functor.Distributive.Distributive t => Pandora.Pattern.Functor.Distributive.Distributive (Pandora.Paradigm.Primary.Transformer.Reverse.Reverse t)
+ Pandora.Paradigm.Primary.Transformer.Reverse: instance Pandora.Pattern.Functor.Extractable.Extractable t => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Primary.Transformer.Reverse.Reverse t)
+ Pandora.Paradigm.Primary.Transformer.Reverse: instance Pandora.Pattern.Functor.Pointable.Pointable t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Primary.Transformer.Reverse.Reverse t)
+ Pandora.Paradigm.Primary.Transformer.Reverse: instance Pandora.Pattern.Functor.Traversable.Traversable t => Pandora.Pattern.Functor.Traversable.Traversable (Pandora.Paradigm.Primary.Transformer.Reverse.Reverse t)
+ Pandora.Paradigm.Primary.Transformer.Reverse: instance Pandora.Pattern.Transformer.Hoistable.Hoistable Pandora.Paradigm.Primary.Transformer.Reverse.Reverse
+ Pandora.Paradigm.Primary.Transformer.Reverse: instance Pandora.Pattern.Transformer.Liftable.Liftable Pandora.Paradigm.Primary.Transformer.Reverse.Reverse
+ Pandora.Paradigm.Primary.Transformer.Reverse: instance Pandora.Pattern.Transformer.Lowerable.Lowerable Pandora.Paradigm.Primary.Transformer.Reverse.Reverse
+ Pandora.Paradigm.Primary.Transformer.Reverse: newtype Reverse t a
+ Pandora.Paradigm.Primary.Transformer.Yoneda: Yoneda :: (forall b. (a -> b) -> t b) -> Yoneda t a
+ Pandora.Paradigm.Primary.Transformer.Yoneda: [yoneda] :: Yoneda t a -> forall b. (a -> b) -> t b
+ Pandora.Paradigm.Primary.Transformer.Yoneda: instance (Pandora.Pattern.Functor.Extractable.Extractable t, Pandora.Pattern.Functor.Pointable.Pointable t, Pandora.Pattern.Functor.Extractable.Extractable u, Pandora.Pattern.Functor.Pointable.Pointable u) => Pandora.Pattern.Functor.Adjoint.Adjoint (Pandora.Paradigm.Primary.Transformer.Yoneda.Yoneda t) (Pandora.Paradigm.Primary.Transformer.Yoneda.Yoneda u)
+ Pandora.Paradigm.Primary.Transformer.Yoneda: instance Pandora.Pattern.Functor.Alternative.Alternative t => Pandora.Pattern.Functor.Alternative.Alternative (Pandora.Paradigm.Primary.Transformer.Yoneda.Yoneda t)
+ Pandora.Paradigm.Primary.Transformer.Yoneda: instance Pandora.Pattern.Functor.Applicative.Applicative t => Pandora.Pattern.Functor.Applicative.Applicative (Pandora.Paradigm.Primary.Transformer.Yoneda.Yoneda t)
+ Pandora.Paradigm.Primary.Transformer.Yoneda: instance Pandora.Pattern.Functor.Avoidable.Avoidable t => Pandora.Pattern.Functor.Avoidable.Avoidable (Pandora.Paradigm.Primary.Transformer.Yoneda.Yoneda t)
+ Pandora.Paradigm.Primary.Transformer.Yoneda: instance Pandora.Pattern.Functor.Covariant.Covariant (Pandora.Paradigm.Primary.Transformer.Yoneda.Yoneda t)
+ Pandora.Paradigm.Primary.Transformer.Yoneda: instance Pandora.Pattern.Functor.Extractable.Extractable t => Pandora.Pattern.Functor.Extractable.Extractable (Pandora.Paradigm.Primary.Transformer.Yoneda.Yoneda t)
+ Pandora.Paradigm.Primary.Transformer.Yoneda: instance Pandora.Pattern.Functor.Pointable.Pointable t => Pandora.Pattern.Functor.Pointable.Pointable (Pandora.Paradigm.Primary.Transformer.Yoneda.Yoneda t)
+ Pandora.Paradigm.Primary.Transformer.Yoneda: instance Pandora.Pattern.Transformer.Liftable.Liftable Pandora.Paradigm.Primary.Transformer.Yoneda.Yoneda
+ Pandora.Paradigm.Primary.Transformer.Yoneda: newtype Yoneda t a
+ Pandora.Paradigm.Structure.Binary: instance Pandora.Paradigm.Structure.Variation.Substructure.Substructure 'Pandora.Paradigm.Primary.Functor.Wye.Left (Pandora.Paradigm.Primary.Transformer.Construction.Construction Pandora.Paradigm.Primary.Functor.Wye.Wye)
+ Pandora.Paradigm.Structure.Binary: instance Pandora.Paradigm.Structure.Variation.Substructure.Substructure 'Pandora.Paradigm.Primary.Functor.Wye.Left Pandora.Paradigm.Structure.Binary.Binary
+ Pandora.Paradigm.Structure.Binary: instance Pandora.Paradigm.Structure.Variation.Substructure.Substructure 'Pandora.Paradigm.Primary.Functor.Wye.Right (Pandora.Paradigm.Primary.Transformer.Construction.Construction Pandora.Paradigm.Primary.Functor.Wye.Wye)
+ Pandora.Paradigm.Structure.Binary: instance Pandora.Paradigm.Structure.Variation.Substructure.Substructure 'Pandora.Paradigm.Primary.Functor.Wye.Right Pandora.Paradigm.Structure.Binary.Binary
+ Pandora.Paradigm.Structure.Rose: type Rose = TU Covariant Covariant Maybe (Construction Stack)
+ Pandora.Pattern.Object.Ring: class Group a => Ring a
- Pandora.Paradigm.Structure.Binary: type Binary = UT Covariant Covariant (Twister Wye) Maybe
+ Pandora.Paradigm.Structure.Binary: type Binary = TU Covariant Covariant Maybe (Construction Wye)
- Pandora.Paradigm.Structure.Stack: type Stack = UT Covariant Covariant (Twister Maybe) Maybe
+ Pandora.Paradigm.Structure.Stack: type Stack = TU Covariant Covariant Maybe (Construction Maybe)
- Pandora.Paradigm.Structure.Stream: type Stream = Twister Identity
+ Pandora.Paradigm.Structure.Stream: type Stream = Construction Identity
- Pandora.Paradigm.Structure.Variation.Substructure: sub :: Substructure f t => t a :-. Output f t a
+ Pandora.Paradigm.Structure.Variation.Substructure: sub :: Substructure f t => t a :-. Tagged f (Output f t a)
- Pandora.Paradigm.Structure.Variation.Substructure: type family Output (f :: * -> k) (t :: * -> *) a = r | r -> f t a;
+ Pandora.Paradigm.Structure.Variation.Substructure: type family Output (f :: * -> k) (t :: * -> *) a;

Files

CHANGELOG.md view
@@ -184,7 +184,7 @@ * Rename `Group`'s method from `inverse` to `invert` * Remove `not` method of `Boolean`, (use `invert` instead) * Remove `Injective` and `Has` type families-* Change superclasseses for `Liftable` and `Lowerable` classes to provide a law+* Change superclasses for `Liftable` and `Lowerable` classes to provide a law  # 0.2.6 * Change order of arguments for `TUT` joint schema@@ -200,3 +200,19 @@ * Remove `left_sub_tree` and `right_sub_tree` lenses of `Binary` tree * Define `this` and `that` methods from `Variation` to `Maybe` * Define `Backwards` type to run `Applicative` actions in reverse order++# 0.2.7+* Replace `Lan` and `Ran` with `Kan` data family+* Rename `Free` to `Instruction` and its constructors: `Pure` to `Enter` and `Impure` to `Instruct`+* Define `Ring` typeclass with `Group` superclass+* Define `Weighted` type family and define instance for `Graph`+* Add `Leap` to `Edges` to indicate a connection with only the first vertex+* Remove `Graph` structure and `Weighted` type family+* Define `Reverse` type to run `Traversable` in reverse order with `Backwards`+* Rename `Twister` to `Construction` (in contrast of `Instruction`)+* Split `Basis` on `Functor` and `Transformer` modules in `Primary`+* Rename `untwist` to `deconstruct` in `Construction`+* Define `Rose` tree structure+* Replace `UT` joint scheme with `TU` in data structures+* Change `sub` method of `Substructure` - it always returns `Tagged` value+* Rename `Construction` constructor of `Construction` to `Construct`
Pandora/Paradigm.hs view
@@ -3,4 +3,4 @@ import Pandora.Paradigm.Structure as Exports import Pandora.Paradigm.Inventory as Exports import Pandora.Paradigm.Controlflow as Exports-import Pandora.Paradigm.Basis as Exports+import Pandora.Paradigm.Primary as Exports
− Pandora/Paradigm/Basis.hs
@@ -1,55 +0,0 @@-module Pandora.Paradigm.Basis (module Exports, note, hush, left, right, this, that) where--import Pandora.Paradigm.Basis.Twister as Exports-import Pandora.Paradigm.Basis.Free as Exports-import Pandora.Paradigm.Basis.Fix as Exports-import Pandora.Paradigm.Basis.Yoneda as Exports-import Pandora.Paradigm.Basis.Continuation as Exports-import Pandora.Paradigm.Basis.Predicate as Exports-import Pandora.Paradigm.Basis.Variation as Exports-import Pandora.Paradigm.Basis.Validation as Exports-import Pandora.Paradigm.Basis.Wye as Exports-import Pandora.Paradigm.Basis.Edges as Exports-import Pandora.Paradigm.Basis.Conclusion as Exports-import Pandora.Paradigm.Basis.Maybe as Exports-import Pandora.Paradigm.Basis.Endo as Exports-import Pandora.Paradigm.Basis.Kan as Exports-import Pandora.Paradigm.Basis.Jet as Exports-import Pandora.Paradigm.Basis.Jack as Exports-import Pandora.Paradigm.Basis.Proxy as Exports-import Pandora.Paradigm.Basis.Tagged as Exports-import Pandora.Paradigm.Basis.Product as Exports-import Pandora.Paradigm.Basis.Constant as Exports-import Pandora.Paradigm.Basis.Backwards as Exports-import Pandora.Paradigm.Basis.Identity as Exports--import Pandora.Core.Morphism ((!))-import Pandora.Core.Functor (type (~>))--note :: e -> Maybe ~> Conclusion e-note x = maybe (Failure x) Success--hush :: Conclusion e ~> Maybe-hush = conclusion (Nothing !) Just--left :: Wye ~> Maybe-left (Both ls _) = Just ls-left (Left ls) = Just ls-left (Right _) = Nothing-left End = Nothing--right :: Wye ~> Maybe-right (Both _ rs) = Just rs-right (Left _) = Nothing-right (Right rs) = Just rs-right End = Nothing--this :: Variation e ~> Maybe-this (This x) = Just x-this (That _) = Nothing-this (These _ x) = Just x--that :: Variation e a -> Maybe e-that (This _) = Nothing-that (That x) = Just x-that (These y _) = Just y
− Pandora/Paradigm/Basis/Backwards.hs
@@ -1,40 +0,0 @@-module Pandora.Paradigm.Basis.Backwards (Backwards (..)) where--import Pandora.Core.Morphism ((&))-import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))-import Pandora.Pattern.Functor.Contravariant (Contravariant ((>$<)))-import Pandora.Pattern.Functor.Extractable (Extractable (extract))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))-import Pandora.Pattern.Functor.Distributive (Distributive ((>>-)))-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))--newtype Backwards t a = Backwards (t a)--instance Covariant t => Covariant (Backwards t) where-	f <$> Backwards x = Backwards $ f <$> x--instance Pointable t => Pointable (Backwards t) where-	point = Backwards . point--instance Extractable t => Extractable (Backwards t) where-	extract (Backwards x) = extract x--instance Applicative t => Applicative (Backwards t) where-	Backwards f <*> Backwards x = Backwards ((&) <$> x <*> f)--instance Traversable t => Traversable (Backwards t) where-	Backwards x ->> f = Backwards <$> x ->> f--instance Distributive t => Distributive (Backwards t) where-	x >>- f = Backwards $ x >>- run . f--instance Contravariant t => Contravariant (Backwards t) where-	f >$< Backwards x = Backwards $ f >$< x--instance Interpreted (Backwards t) where-	type Primary (Backwards t) a = t a-	run (Backwards x) = x
− Pandora/Paradigm/Basis/Conclusion.hs
@@ -1,105 +0,0 @@-module Pandora.Paradigm.Basis.Conclusion (Conclusion (..), Failable, conclusion, fail, failure) where--import Pandora.Core.Functor (type (~>))-import Pandora.Pattern.Category ((.))-import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))-import Pandora.Paradigm.Controlflow.Joint.Transformer.Monadic (Monadic (lay, wrap), (:>) (TM))-import Pandora.Paradigm.Controlflow.Joint.Schematic (Schematic)-import Pandora.Paradigm.Controlflow.Joint.Adaptable (Adaptable (adapt))-import Pandora.Paradigm.Controlflow.Joint.Schemes.UT (UT (UT))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), (<$$>)))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>), apply))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))-import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))-import Pandora.Pattern.Functor.Monad (Monad)-import Pandora.Pattern.Functor.Bivariant (Bivariant ((<->)))-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Pattern.Object.Setoid (Setoid ((==)), Boolean (False))-import Pandora.Pattern.Object.Chain (Chain ((<=>)), Ordering (Less, Greater))-import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))--data Conclusion e a = Failure e | Success a--instance Covariant (Conclusion e) where-	f <$> Success x = Success $ f x-	_ <$> Failure y = Failure y--instance Pointable (Conclusion e) where-	point = Success--instance Applicative (Conclusion e) where-	Success f <*> x = f <$> x-	Failure y <*> _ = Failure y--instance Alternative (Conclusion e) where-	Failure _ <+> x = x-	Success x <+> _ = Success x--instance Traversable (Conclusion e) where-	Failure y ->> _ = point $ Failure y-	Success x ->> f = Success <$> f x--instance Bindable (Conclusion e) where-	Success x >>= f = f x-	Failure y >>= _ = Failure y--instance Monad (Conclusion e) where--instance Bivariant Conclusion where-    f <-> g = conclusion (Failure . f) (Success . g)--instance (Setoid e, Setoid a) => Setoid (Conclusion e a) where-	Success x == Success y = x == y-	Failure x == Failure y = x == y-	_ == _ = False--instance (Chain e, Chain a) => Chain (Conclusion e a) where-	Success x <=> Success y = x <=> y-	Failure x <=> Failure y = x <=> y-	Failure _ <=> Success _ = Less-	Success _ <=> Failure _ = Greater--instance (Semigroup e, Semigroup a) => Semigroup (Conclusion e a) where-	Success x + Success y = Success $ x + y-	Failure x + Failure y = Failure $ x + y-	Failure _ + Success y = Success y-	Success x + Failure _ = Success x--conclusion :: (e -> r) -> (a -> r) -> Conclusion e a -> r-conclusion f _ (Failure x) = f x-conclusion _ s (Success x) = s x--fail :: (e -> r) -> Conclusion e ~> Conclusion r-fail f (Failure x) = Failure $ f x-fail _ (Success y) = Success y--instance Interpreted (Conclusion e) where-	type Primary (Conclusion e) a = Conclusion e a-	run x = x--type instance Schematic Monad (Conclusion e) u = UT Covariant Covariant (Conclusion e) u--instance Monadic (Conclusion e) where-	lay x = TM . UT $ Success <$> x-	wrap x = TM . UT . point $ x--type Failable e = Adaptable (Conclusion e)--instance Covariant u => Covariant (UT Covariant Covariant (Conclusion e) u) where-	f <$> UT x = UT $ f <$$> x--instance Applicative u => Applicative (UT Covariant Covariant (Conclusion e) u) where-	UT f <*> UT x = UT $ apply <$> f <*> x--instance Pointable u => Pointable (UT Covariant Covariant (Conclusion e) u) where-	point = UT . point . point--instance (Pointable u, Bindable u) => Bindable (UT Covariant Covariant (Conclusion e) u) where-	UT x >>= f = UT $ x >>= conclusion (point . Failure) (run . f)--instance Monad u => Monad (UT Covariant Covariant (Conclusion e) u) where--failure :: Failable e t => e -> t a-failure = adapt . Failure
− Pandora/Paradigm/Basis/Constant.hs
@@ -1,64 +0,0 @@-module Pandora.Paradigm.Basis.Constant (Constant (..)) where--import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))-import Pandora.Pattern.Functor.Contravariant (Contravariant ((>$<)))-import Pandora.Pattern.Functor.Invariant (Invariant (invmap))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))-import Pandora.Pattern.Functor.Bivariant (Bivariant ((<->)))-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Pattern.Object.Setoid (Setoid ((==)))-import Pandora.Pattern.Object.Chain (Chain ((<=>)))-import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))-import Pandora.Pattern.Object.Monoid (Monoid (zero))-import Pandora.Pattern.Object.Ringoid (Ringoid ((*)))-import Pandora.Pattern.Object.Quasiring (Quasiring (one))-import Pandora.Pattern.Object.Semilattice (Infimum ((/\)), Supremum ((\/)))-import Pandora.Pattern.Object.Lattice (Lattice)-import Pandora.Pattern.Object.Group (Group (invert))--newtype Constant a b = Constant a--instance Covariant (Constant a) where-	_ <$> Constant x = Constant x--instance Contravariant (Constant a) where-	_ >$< Constant x = Constant x--instance Invariant (Constant a) where-	invmap _ _ (Constant x) = Constant x--instance Traversable (Constant a) where-	Constant x ->> _ = point (Constant x)--instance Bivariant Constant where-	f <-> _ = \(Constant x) -> Constant $ f x--instance Setoid a => Setoid (Constant a b) where-	Constant x == Constant y = x == y--instance Chain a => Chain (Constant a b) where-	Constant x <=> Constant y = x <=> y--instance Semigroup a => Semigroup (Constant a b) where-	Constant x + Constant y = Constant $ x + y--instance Monoid a => Monoid (Constant a b) where-	 zero = Constant zero--instance Ringoid a => Ringoid (Constant a b) where-	Constant x * Constant y = Constant $ x * y--instance Quasiring a => Quasiring (Constant a b) where-	 one = Constant one--instance Infimum a => Infimum (Constant a b) where-	Constant x /\ Constant y = Constant $ x /\ y--instance Supremum a => Supremum (Constant a b) where-	Constant x \/ Constant y = Constant $ x \/ y--instance Lattice a => Lattice (Constant a b) where--instance Group a => Group (Constant a b) where-	invert (Constant x) = Constant $ invert x
− Pandora/Paradigm/Basis/Continuation.hs
@@ -1,43 +0,0 @@-module Pandora.Paradigm.Basis.Continuation (Continuation (..), cwcc, reset, shift) where--import Pandora.Core.Functor (type (:.), type (:=), type (::|:.))-import Pandora.Core.Morphism ((!), (%))-import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))-import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))-import Pandora.Pattern.Functor.Monad (Monad)-import Pandora.Pattern.Transformer.Liftable (Liftable (lift))-import Pandora.Pattern.Functor.Divariant (($))--newtype Continuation r t a = Continuation { continue :: (->) ::|:. a :. t := r }--instance Covariant t => Covariant (Continuation r t) where-	f <$> Continuation continuation = Continuation $ continuation . (. f)--instance Covariant t => Pointable (Continuation r t) where-	point x = Continuation ($ x)--instance Covariant t => Applicative (Continuation r t) where-	f <*> x = Continuation $ \h -> continue f $ \g -> continue x (h . g)--instance Covariant t => Bindable (Continuation r t) where-	x >>= f = Continuation $ \g -> continue x $ \y -> continue (f y) g--instance Monad t => Monad (Continuation r t) where--instance (forall u . Bindable u) => Liftable (Continuation r) where-	lift = Continuation . (>>=)---- | Call with current continuation-cwcc :: ((a -> Continuation r t b) -> Continuation r t a) -> Continuation r t a-cwcc f = Continuation $ \g -> continue % g . f $ Continuation . (!) . g---- | Delimit the continuation of any 'shift'-reset :: (forall u . Bindable u, Bindable t, Pointable t) => Continuation r t r -> Continuation s t r-reset = lift . continue % point---- | Capture the continuation up to the nearest enclosing 'reset' and pass it-shift :: Pointable t => ((a -> t r) -> Continuation r t r) -> Continuation r t a-shift f = Continuation $ continue % point . f
− Pandora/Paradigm/Basis/Edges.hs
@@ -1,23 +0,0 @@-module Pandora.Paradigm.Basis.Edges (Edges (..), edges) where--import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))-import Pandora.Pattern.Functor.Divariant (($))--data Edges a = Empty | Connect a | Overlay a--instance Covariant Edges where-	_ <$> Empty = Empty-	f <$> Connect x = Connect $ f x-	f <$> Overlay x = Overlay $ f x--instance Traversable Edges where-	Empty ->> _ = point Empty-	Connect x ->> f = Connect <$> f x-	Overlay x ->> f = Overlay <$> f x--edges :: r -> (a -> r) -> (a -> r) -> Edges a -> r-edges r _ _ Empty = r-edges _ f _ (Connect x) = f x-edges _ _ g (Overlay y) = g y
− Pandora/Paradigm/Basis/Endo.hs
@@ -1,17 +0,0 @@-module Pandora.Paradigm.Basis.Endo (Endo (..)) where--import Pandora.Pattern.Category (identity, (.))-import Pandora.Pattern.Functor.Invariant (Invariant (invmap))-import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))-import Pandora.Pattern.Object.Monoid (Monoid (zero))--newtype Endo a = Endo { endo :: a -> a }--instance Invariant Endo where-	invmap f g (Endo x) = Endo (f . x . g)--instance Semigroup (Endo a) where-	Endo f + Endo g = Endo (g . f)--instance Monoid (Endo a) where-	zero = Endo identity
− Pandora/Paradigm/Basis/Fix.hs
@@ -1,16 +0,0 @@-module Pandora.Paradigm.Basis.Fix (Fix (..), cata, ana, hylo) where--import Pandora.Core.Functor (type (<-|), type (|->))-import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Covariant (Covariant (comap))--newtype Fix t = Fix { unfix :: t (Fix t) }--cata :: Covariant t => (a <-| t) -> Fix t -> a-cata f = f . comap (cata f) . unfix--ana :: Covariant t => (a |-> t) -> a -> Fix t-ana f = Fix . comap (ana f) . f--hylo :: Covariant t => (b <-| t) -> (a |-> t) -> (a -> b)-hylo phi psi = cata phi . ana psi
− Pandora/Paradigm/Basis/Free.hs
@@ -1,45 +0,0 @@-module Pandora.Paradigm.Basis.Free (Free (..)) where--import Pandora.Core.Functor (type (:.), type (:=))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), (<$$>)))-import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>), (->>>)))-import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))-import Pandora.Pattern.Transformer.Liftable (Liftable (lift))-import Pandora.Pattern.Functor.Divariant (($))--data Free t a = Pure a | Impure (t :. Free t := a)--instance Covariant t => Covariant (Free t) where-	f <$> Pure x = Pure $ f x-	f <$> Impure xs = Impure $ f <$$> xs--instance Covariant t => Pointable (Free t) where-	point = Pure--instance Alternative t => Alternative (Free t) where-	Pure x <+> _ = Pure x-	_ <+> Pure y = Pure y-	Impure xs <+> Impure ys = Impure $ xs <+> ys--instance Avoidable t => Avoidable (Free t) where-	empty = Impure empty--instance Covariant t => Applicative (Free t) where-	Pure f <*> Pure y = Pure $ f y-	Pure f <*> Impure y = Impure $ f <$$> y-	Impure f <*> y = Impure $ (<*> y) <$> f--instance Covariant t => Bindable (Free t) where-	Pure x >>= f = f x-	Impure xs >>= f = Impure $ (>>= f) <$> xs--instance Traversable t => Traversable (Free t) where-	Pure x ->> f = Pure <$> f x-	Impure xs ->> f = Impure <$> xs ->>> f--instance Liftable Free where-	lift x = Impure $ Pure <$> x
− Pandora/Paradigm/Basis/Identity.hs
@@ -1,87 +0,0 @@-module Pandora.Paradigm.Basis.Identity (Identity (..)) where--import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), comap))-import Pandora.Pattern.Functor.Extractable (Extractable (extract))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))-import Pandora.Pattern.Functor.Distributive (Distributive ((>>-)))-import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))-import Pandora.Pattern.Functor.Extendable (Extendable ((=>>)))-import Pandora.Pattern.Functor.Monad (Monad)-import Pandora.Pattern.Functor.Comonad (Comonad)-import Pandora.Pattern.Functor.Adjoint (Adjoint ((-|), (|-)))-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Pattern.Object.Setoid (Setoid ((==)))-import Pandora.Pattern.Object.Chain (Chain ((<=>)))-import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))-import Pandora.Pattern.Object.Monoid (Monoid (zero))-import Pandora.Pattern.Object.Ringoid (Ringoid ((*)))-import Pandora.Pattern.Object.Quasiring (Quasiring (one))-import Pandora.Pattern.Object.Semilattice (Infimum ((/\)), Supremum ((\/)))-import Pandora.Pattern.Object.Lattice (Lattice)-import Pandora.Pattern.Object.Group (Group (invert))--newtype Identity a = Identity a--instance Covariant Identity where-	f <$> Identity x = Identity $ f x--instance Pointable Identity where-	point = Identity--instance Extractable Identity where-	extract (Identity x) = x--instance Applicative Identity where-	Identity f <*> Identity x = Identity $ f x--instance Traversable Identity where-	Identity x ->> f = Identity <$> f x--instance Distributive Identity where-	x >>- f = Identity $ extract . f <$> x--instance Bindable Identity where-	Identity x >>= f = f x--instance Monad Identity--instance Extendable Identity where-	x =>> f = Identity . f $ x--instance Comonad Identity--instance Adjoint Identity Identity where-	x -| f = Identity . f . Identity $ x-	x |- g = extract . extract . comap g $ x--instance Setoid a => Setoid (Identity a) where-	Identity x == Identity y = x == y--instance Chain a => Chain (Identity a) where-	Identity x <=> Identity y = x <=> y--instance Semigroup a => Semigroup (Identity a) where-	Identity x + Identity y = Identity $ x + y--instance Monoid a => Monoid (Identity a) where-	 zero = Identity zero--instance Ringoid a => Ringoid (Identity a) where-	Identity x * Identity y = Identity $ x * y--instance Quasiring a => Quasiring (Identity a) where-	 one = Identity one--instance Infimum a => Infimum (Identity a) where-	Identity x /\ Identity y = Identity $ x /\ y--instance Supremum a => Supremum (Identity a) where-	Identity x \/ Identity y = Identity $ x \/ y--instance Lattice a => Lattice (Identity a) where--instance Group a => Group (Identity a) where-	invert (Identity x) = Identity $ invert x
− Pandora/Paradigm/Basis/Jack.hs
@@ -1,67 +0,0 @@-module Pandora.Paradigm.Basis.Jack (Jack (..), jack) where--import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)), comap)-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Extractable (Extractable (extract))-import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))-import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>), traverse))-import Pandora.Pattern.Functor.Distributive (Distributive ((>>-), distribute))-import Pandora.Pattern.Transformer.Liftable (Liftable (lift))-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Pattern.Object.Setoid (Setoid ((==)), Boolean (False))-import Pandora.Pattern.Object.Chain (Chain ((<=>)), Ordering (Less, Greater))--data Jack t a = It a | Other (t a)--instance Covariant t => Covariant (Jack t) where-	f <$> It x = It $ f x-	f <$> Other y = Other $ f <$> y--instance Covariant t => Pointable (Jack t) where-	point = It--instance Alternative t => Alternative (Jack t) where-	It x <+> _ = It x-	Other _ <+> It y = It y-	Other x <+> Other y = Other (x <+> y)--instance Avoidable t => Avoidable (Jack t) where-	empty = Other empty--instance Extractable t => Extractable (Jack t) where-	extract (It x) = x-	extract (Other y) = extract y--instance Applicative t => Applicative (Jack t) where-	It f <*> It x = It $ f x-	It f <*> Other y = Other $ f <$> y-	Other f <*> It x = Other $ ($ x) <$> f-	Other f <*> Other y = Other $ f <*> y--instance Traversable t => Traversable (Jack t) where-	It x ->> f = It <$> f x-	Other y ->> f = comap Other . traverse f $ y--instance Distributive t => Distributive (Jack t) where-	x >>- f = distribute $ f <$> x--instance Liftable Jack where-	lift = Other--instance (Setoid a, Setoid (t a)) => Setoid (Jack t a) where-	It x == It y = x == y-	Other x == Other y = x == y-	_ == _ = False--instance (Chain a, Chain (t a)) => Chain (Jack t a) where-	It _ <=> Other _ = Less-	Other _ <=> It _ = Greater-	It x <=> It y = x <=> y-	Other x <=> Other y = x <=> y--jack :: (a -> r) -> (t a -> r) -> Jack t a -> r-jack f _ (It x) = f x-jack _ g (Other y) = g y
− Pandora/Paradigm/Basis/Jet.hs
@@ -1,22 +0,0 @@-module Pandora.Paradigm.Basis.Jet (Jet (..)) where--import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)), (<$$>))-import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Extractable (Extractable (extract))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>), (->>>)))--data Jet t a = Jet a (Jet t (t a))--instance Covariant t => Covariant (Jet t) where-	f <$> Jet a as = Jet (f a) (f <$$> as)--instance Traversable t => Traversable (Jet t) where-	Jet a as ->> f = Jet <$> f a <*> as ->>> f--instance (forall u . Avoidable u) => Pointable (Jet t) where-	point x = Jet x empty--instance Covariant t => Extractable (Jet t) where-	extract (Jet x _) = x
− Pandora/Paradigm/Basis/Kan.hs
@@ -1,25 +0,0 @@-module Pandora.Paradigm.Basis.Kan (Lan (..), Ran (..)) where--import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Contravariant (Contravariant ((>$<)))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))--newtype Lan t u b a = Lan ((t b -> a) -> u b)--instance Contravariant (Lan t u b) where-	f >$< Lan x = Lan $ x . (f .)--instance Interpreted (Lan t u b) where-	type Primary (Lan t u b) a = (t b -> a) -> u b-	run (Lan x) = x--newtype Ran t u b a = Ran ((a -> t b) -> u b)--instance Covariant (Ran t u b) where-	f <$> Ran x = Ran $ x . (. f)--instance Interpreted (Ran t u b) where-	type Primary (Ran t u b) a = (a -> t b) -> u b-	run (Ran x) = x
− Pandora/Paradigm/Basis/Maybe.hs
@@ -1,117 +0,0 @@-module Pandora.Paradigm.Basis.Maybe (Maybe (..), Optional, maybe, nothing) where--import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))-import Pandora.Paradigm.Controlflow.Joint.Transformer.Monadic (Monadic (lay, wrap), (:>) (TM))-import Pandora.Paradigm.Controlflow.Joint.Schematic (Schematic)-import Pandora.Paradigm.Controlflow.Joint.Adaptable (Adaptable (adapt))-import Pandora.Paradigm.Controlflow.Joint.Schemes.UT (UT (UT))-import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), (<$$>)))-import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>), apply))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))-import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))-import Pandora.Pattern.Functor.Monad (Monad)-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Pattern.Object.Setoid (Setoid ((==)), Boolean (True, False))-import Pandora.Pattern.Object.Chain (Chain ((<=>)), Ordering (Less, Equal, Greater))-import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))-import Pandora.Pattern.Object.Monoid (Monoid (zero))-import Pandora.Pattern.Object.Semilattice (Infimum ((/\)), Supremum ((\/)))-import Pandora.Pattern.Object.Lattice (Lattice)--data Maybe a = Nothing | Just a--instance Covariant Maybe where-	f <$> Just x = Just $ f x-	_ <$> Nothing = Nothing--instance Pointable Maybe where-	point = Just--instance Avoidable Maybe where-	empty = Nothing--instance Applicative Maybe where-	Just f <*> x = f <$> x-	Nothing <*> _ = Nothing--instance Alternative Maybe where-	Nothing <+> y = y-	Just x <+> _ = Just x--instance Traversable Maybe where-	Nothing ->> _ = point Nothing-	Just x ->> f = Just <$> f x--instance Bindable Maybe where-	Just x >>= f = f x-	Nothing >>= _ = Nothing--instance Monad Maybe where--instance Setoid a => Setoid (Maybe a) where-	Just x == Just y = x == y-	Nothing == Nothing = True-	_ == _ = False--instance Chain a => Chain (Maybe a) where-	Just x <=> Just y = x <=> y-	Nothing <=> Nothing = Equal-	Nothing <=> Just _ = Less-	Just _ <=> Nothing = Greater--instance Semigroup a => Semigroup (Maybe a) where-	Just x + Just y = Just $ x + y-	Nothing + x = x-	x + Nothing = x--instance Semigroup a => Monoid (Maybe a) where-	zero = Nothing--instance Infimum a => Infimum (Maybe a) where-	Just x /\ Just y = Just $ x /\ y-	_ /\ Nothing = Nothing-	Nothing /\ _ = Nothing--instance Supremum a => Supremum (Maybe a) where-	Just x \/ Just y = Just $ x \/ y-	x \/ Nothing = x-	Nothing \/ x = x--instance Lattice a => Lattice (Maybe a) where--maybe :: b -> (a -> b) -> Maybe a -> b-maybe x _ Nothing = x-maybe _ f (Just y) = f y--type instance Schematic Monad Maybe u = UT Covariant Covariant Maybe u--instance Interpreted Maybe where-	type Primary Maybe a = Maybe a-	run x = x--instance Monadic Maybe where-	lay x = TM . UT $ Just <$> x-	wrap x = TM . UT . point $ x--type Optional = Adaptable Maybe--instance Covariant u => Covariant (UT Covariant Covariant Maybe u) where-	f <$> UT x = UT $ f <$$> x--instance Applicative u => Applicative (UT Covariant Covariant Maybe u) where-	UT f <*> UT x = UT $ apply <$> f <*> x--instance Pointable u => Pointable (UT Covariant Covariant Maybe u) where-	point = UT . point . point--instance (Pointable u, Bindable u) => Bindable (UT Covariant Covariant Maybe u) where-	UT x >>= f = UT $ x >>= maybe (point Nothing) (run . f)--instance Monad u => Monad (UT Covariant Covariant Maybe u) where--nothing :: Optional t => t a-nothing = adapt Nothing
− Pandora/Paradigm/Basis/Predicate.hs
@@ -1,16 +0,0 @@-module Pandora.Paradigm.Basis.Predicate (Predicate (..)) where--import Pandora.Core.Morphism ((!))-import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Contravariant (Contravariant ((>$<)))-import Pandora.Pattern.Functor.Determinable (Determinable (determine))-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Pattern.Object.Setoid (Boolean (True))--newtype Predicate a = Predicate { predicate :: a -> Boolean }--instance Contravariant Predicate where-	f >$< g = Predicate $ predicate g . f--instance Determinable Predicate where-	determine = Predicate (True !)
− Pandora/Paradigm/Basis/Product.hs
@@ -1,87 +0,0 @@-module Pandora.Paradigm.Basis.Product (Product (..), type (:*:)-	, delta, swap, attached, curry, uncurry) where--import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))-import Pandora.Pattern.Functor.Extractable (Extractable (extract))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))-import Pandora.Pattern.Functor.Extendable (Extendable ((=>>)))-import Pandora.Pattern.Functor.Comonad (Comonad)-import Pandora.Pattern.Functor.Adjoint (Adjoint ((-|), (|-)))-import Pandora.Pattern.Functor.Bivariant (Bivariant ((<->)))-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Pattern.Object.Setoid (Setoid ((==)))-import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))-import Pandora.Pattern.Object.Monoid (Monoid (zero))-import Pandora.Pattern.Object.Ringoid (Ringoid ((*)))-import Pandora.Pattern.Object.Quasiring (Quasiring (one))-import Pandora.Pattern.Object.Semilattice (Infimum ((/\)), Supremum ((\/)))-import Pandora.Pattern.Object.Lattice (Lattice)-import Pandora.Pattern.Object.Group (Group (invert))--infixr 1 :*:--data Product a b = a :*: b--type (:*:) = Product--instance Covariant (Product a) where-	f <$> (x :*: y) = x :*: f y--instance Extractable (Product a) where-	extract (_ :*: y) = y--instance Traversable (Product a) where-	(x :*: y) ->> f = (:*:) x <$> f y--instance Extendable (Product a) where-	(x :*: y) =>> f = (:*:) x $ f (x :*: y)--instance Comonad (Product a) where--instance Adjoint (Product a) ((->) a) where-	x -| f = \y -> f $ y :*: x-	(y :*: x) |- f = f x y--instance Bivariant Product where-	f <-> g = \(x :*: y) -> f x :*: g y--instance (Setoid a, Setoid b) => Setoid (Product a b) where-	(x :*: y) == (x' :*: y') = (x == x') * (y == y')--instance (Semigroup a, Semigroup b) => Semigroup (Product a b) where-	(x :*: y) + (x' :*: y') = x + x' :*: y + y'--instance (Monoid a, Monoid b) => Monoid (Product a b) where-	zero = zero :*: zero--instance (Ringoid a, Ringoid b) => Ringoid (Product a b) where-	(x :*: y) * (x' :*: y') = x * x' :*: y * y'--instance (Quasiring a, Quasiring b) => Quasiring (Product a b) where-	one = one :*: one--instance (Infimum a, Infimum b) => Infimum (Product a b) where-	(x :*: y) /\ (x' :*: y') = x /\ x' :*: y /\ y'--instance (Supremum a, Supremum b) => Supremum (Product a b) where-	(x :*: y) \/ (x' :*: y') = x \/ x' :*: y \/ y'--instance (Lattice a, Lattice b) => Lattice (Product a b) where--instance (Group a, Group b) => Group (Product a b) where-	invert (x :*: y) = invert x :*: invert y--delta :: a -> a :*: a-delta x = x :*: x--swap :: a :*: b -> b :*: a-swap (x :*: y) = y :*: x--attached :: a :*: b -> a-attached (x :*: _) = x--curry :: (a :*: b -> c) -> a -> b -> c-curry f x y = f $ x :*: y--uncurry :: (a -> b -> c) -> (a :*: b -> c)-uncurry f (x :*: y) = f x y
− Pandora/Paradigm/Basis/Proxy.hs
@@ -1,39 +0,0 @@-module Pandora.Paradigm.Basis.Proxy where--import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))-import Pandora.Pattern.Functor.Contravariant (Contravariant ((>$<)))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))-import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))-import Pandora.Pattern.Functor.Distributive (Distributive ((>>-)))-import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))-import Pandora.Pattern.Functor.Extendable (Extendable ((=>>)))-import Pandora.Pattern.Functor.Monad (Monad)--data Proxy a = Proxy--instance Covariant Proxy where-	_ <$> Proxy = Proxy--instance Contravariant Proxy where-	_ >$< _ = Proxy--instance Pointable Proxy where-	point _ = Proxy--instance Applicative Proxy where-	_ <*> _ = Proxy--instance Alternative Proxy where-	_ <+> _ = Proxy--instance Distributive Proxy where-	_ >>- _ = Proxy--instance Bindable Proxy where-	_ >>= _ = Proxy--instance Monad Proxy--instance Extendable Proxy where-	_ =>> _ = Proxy
− Pandora/Paradigm/Basis/Tagged.hs
@@ -1,96 +0,0 @@-module Pandora.Paradigm.Basis.Tagged (Tagged (..), retag, tagself, type (:#)) where--import Pandora.Core.Functor (type (|->), type (~>))-import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))-import Pandora.Pattern.Functor.Extractable (Extractable (extract))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))-import Pandora.Pattern.Functor.Distributive (Distributive ((>>-)))-import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))-import Pandora.Pattern.Functor.Extendable (Extendable ((=>>)))-import Pandora.Pattern.Functor.Monad (Monad)-import Pandora.Pattern.Functor.Comonad (Comonad)-import Pandora.Pattern.Functor.Bivariant (Bivariant ((<->)))-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Pattern.Object.Setoid (Setoid ((==)))-import Pandora.Pattern.Object.Chain (Chain ((<=>)))-import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))-import Pandora.Pattern.Object.Monoid (Monoid (zero))-import Pandora.Pattern.Object.Ringoid (Ringoid ((*)))-import Pandora.Pattern.Object.Quasiring (Quasiring (one))-import Pandora.Pattern.Object.Semilattice (Infimum ((/\)), Supremum ((\/)))-import Pandora.Pattern.Object.Lattice (Lattice)-import Pandora.Pattern.Object.Group (Group (invert))--newtype Tagged tag a = Tag a--infixr 0 :#-type (:#) tag = Tagged tag--instance Covariant (Tagged tag) where-	f <$> Tag x = Tag $ f x--instance Pointable (Tagged tag) where-	point = Tag--instance Extractable (Tagged tag) where-	extract (Tag x) = x--instance Applicative (Tagged tag) where-	Tag f <*> Tag x = Tag $ f x--instance Traversable (Tagged tag) where-	Tag x ->> f = Tag <$> f x--instance Distributive (Tagged tag) where-	x >>- f = Tag $ extract . f <$> x--instance Bindable (Tagged tag) where-	Tag x >>= f = f x--instance Monad (Tagged tag)--instance Extendable (Tagged tag) where-	x =>> f = Tag . f $ x--instance Comonad (Tagged tag)--instance Bivariant Tagged where-	_ <-> g = \(Tag x) -> Tag $ g x--instance Setoid a => Setoid (Tagged tag a) where-	Tag x == Tag y = x == y--instance Chain a => Chain (Tagged tag a) where-	Tag x <=> Tag y = x <=> y--instance Semigroup a => Semigroup (Tagged tag a) where-	Tag x + Tag y = Tag $ x + y--instance Monoid a => Monoid (Tagged tag a) where-	 zero = Tag zero--instance Ringoid a => Ringoid (Tagged tag a) where-	Tag x * Tag y = Tag $ x * y--instance Quasiring a => Quasiring (Tagged tag a) where-	one = Tag one--instance Infimum a => Infimum (Tagged tag a) where-	Tag x /\ Tag y = Tag $ x /\ y--instance Supremum a => Supremum (Tagged tag a) where-	Tag x \/ Tag y = Tag $ x \/ y--instance Lattice a => Lattice (Tagged tag a) where--instance Group a => Group (Tagged tag a) where-	invert (Tag x) = Tag $ invert x--retag :: Tagged old ~> Tagged new-retag (Tag x) = Tag x--tagself :: a |-> Tagged a-tagself = Tag
− Pandora/Paradigm/Basis/Twister.hs
@@ -1,68 +0,0 @@-module Pandora.Paradigm.Basis.Twister (Twister (..), untwist, coiterate, section) where--import Pandora.Core.Functor (type (:.), type (:=), type (|->), type (~>))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), (<$$>)))-import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Extractable (Extractable (extract))-import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>), (<**>)))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>), (->>>)))-import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))-import Pandora.Pattern.Functor.Extendable (Extendable ((=>>), extend))-import Pandora.Pattern.Functor.Monad (Monad)-import Pandora.Pattern.Functor.Comonad (Comonad)-import Pandora.Pattern.Transformer.Lowerable (Lowerable (lower))-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Pattern.Object.Setoid (Setoid ((==)))-import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))-import Pandora.Pattern.Object.Ringoid ((*))-import Pandora.Pattern.Object.Monoid (Monoid (zero))--data Twister t a = Twister a (t :. Twister t := a)--instance Covariant t => Covariant (Twister t) where-	f <$> Twister x xs = Twister (f x) $ f <$$> xs--instance Avoidable t => Pointable (Twister t) where-	point x = Twister x empty--instance Covariant t => Extractable (Twister t) where-	extract (Twister x _) = x--instance Applicative t => Applicative (Twister t) where-	Twister f fs <*> Twister x xs = Twister (f x) $ fs <**> xs--instance Traversable t => Traversable (Twister t) where-	Twister x xs ->> f = Twister <$> f x <*> xs ->>> f--instance Alternative t => Bindable (Twister t) where-	Twister x xs >>= f = case f x of Twister y ys -> Twister y $ ys <+> (>>= f) <$> xs--instance Covariant t => Extendable (Twister t) where-	x =>> f = Twister (f x) $ extend f <$> untwist x--instance (Avoidable t, Alternative t) => Monad (Twister t) where--instance Covariant t => Comonad (Twister t) where--instance Lowerable Twister where-	lower (Twister _ xs) = extract <$> xs--instance (Setoid a, forall b . Setoid b => Setoid (t b)) => Setoid (Twister t a) where-	Twister x xs == Twister y ys = (x == y) * (xs == ys)--instance (Semigroup a, forall b . Semigroup b => Semigroup (t b)) => Semigroup (Twister t a) where-	Twister x xs + Twister y ys = Twister (x + y) $ xs + ys--instance (Monoid a, forall b . Semigroup b => Monoid (t b)) => Monoid (Twister t a) where-	zero = Twister zero zero--untwist :: Twister t a -> (t :. Twister t) a-untwist (Twister _ xs) = xs--coiterate :: Covariant t => a |-> t -> a |-> Twister t-coiterate coalgebra x = Twister x $ coiterate coalgebra <$> coalgebra x--section :: Comonad t => t ~> Twister t-section as = Twister (extract as) $ extend section as
− Pandora/Paradigm/Basis/Validation.hs
@@ -1,60 +0,0 @@-module Pandora.Paradigm.Basis.Validation (Validation (..)) where--import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))-import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))-import Pandora.Pattern.Functor.Bivariant (Bivariant ((<->)))-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Pattern.Object.Setoid (Setoid ((==)), Boolean (False))-import Pandora.Pattern.Object.Chain (Chain ((<=>)), Ordering (Less, Greater))-import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))--data Validation e a = Flaws e | Validated a--instance Covariant (Validation e) where-	_ <$> Flaws e = Flaws e-	f <$> Validated x = Validated $ f x--instance Pointable (Validation e) where-	point = Validated--instance Semigroup e => Applicative (Validation e) where-	Flaws e <*> Flaws e' = Flaws $ e + e'-	Flaws e <*> Validated _ = Flaws e-	Validated _ <*> Flaws e' = Flaws e'-	Validated f <*> Validated x = Validated $ f x--instance Alternative (Validation e) where-	Flaws _ <+> x = x-	Validated x <+> _ = Validated x--instance Traversable (Validation e) where-	Validated x ->> f = Validated <$> f x-	Flaws e ->> _ = point $ Flaws e--instance Bivariant Validation where-    f <-> g = validation (Flaws . f) (Validated . g)--instance (Setoid e, Setoid a) => Setoid (Validation e a) where-	Validated x == Validated y = x == y-	Flaws x == Flaws y = x == y-	_ == _ = False--instance (Chain e, Chain a) => Chain (Validation e a) where-	Validated x <=> Validated y = x <=> y-	Flaws x <=> Flaws y = x <=> y-	Flaws _ <=> Validated _ = Less-	Validated _ <=> Flaws _ = Greater--instance (Semigroup e, Semigroup a) => Semigroup (Validation e a) where-	Validated x + Validated y = Validated $ x + y-	Flaws x + Flaws y = Flaws $ x + y-	Flaws _ + Validated y = Validated y-	Validated x + Flaws _ = Validated x--validation :: (e -> r) -> (a -> r) -> Validation e a -> r-validation f _ (Flaws x) = f x-validation _ s (Validated x) = s x
− Pandora/Paradigm/Basis/Variation.hs
@@ -1,26 +0,0 @@-module Pandora.Paradigm.Basis.Variation (Variation (..), variation) where--import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))-import Pandora.Pattern.Functor.Divariant (($))--data Variation e a = This a | That e | These e a--instance Covariant (Variation e) where-	f <$> This x = This $ f x-	_ <$> That y = That y-	f <$> These y x = These y (f x)--instance Pointable (Variation e) where-	point = This--instance Traversable (Variation e) where-	This x ->> f = This <$> f x-	That y ->> _ = point $ That y-	These y x ->> f = These y <$> f x--variation :: (a -> r) -> (e -> r) -> (e -> a -> r) -> Variation e a -> r-variation f _ _ (This x) = f x-variation _ g _ (That y) = g y-variation _ _ h (These y x) = h y x
− Pandora/Paradigm/Basis/Wye.hs
@@ -1,27 +0,0 @@-module Pandora.Paradigm.Basis.Wye (Wye (..), wye) where--import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))-import Pandora.Pattern.Functor.Divariant (($))--data Wye a = End | Left a | Right a | Both a a--instance Covariant Wye where-	_ <$> End = End-	f <$> Left x = Left $ f x-	f <$> Right y = Right $ f y-	f <$> Both x y = Both (f x) (f y)--instance Traversable Wye where-	End ->> _ = point End-	Left x ->> f = Left <$> f x-	Right y ->> f = Right <$> f y-	Both x y ->> f = Both <$> f x <*> f y--wye :: r -> (a -> r) -> (a -> r) -> (a -> a -> r) -> Wye a -> r-wye r _ _ _ End = r-wye _ f _ _ (Left x) = f x-wye _ _ g _ (Right y) = g y-wye _ _ _ h (Both x y) = h x y
− Pandora/Paradigm/Basis/Yoneda.hs
@@ -1,41 +0,0 @@-module Pandora.Paradigm.Basis.Yoneda (Yoneda (..)) where--import Pandora.Core.Morphism ((!))-import Pandora.Pattern.Category (identity, (.))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))-import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))-import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Extractable (Extractable (extract))-import Pandora.Pattern.Functor.Adjoint (Adjoint ((-|), (|-)))-import Pandora.Pattern.Transformer.Liftable (Liftable (lift))-import Pandora.Pattern.Functor.Divariant (($))--newtype Yoneda t a = Yoneda-	{ yoneda :: forall b . (a -> b) -> t b }--instance Covariant (Yoneda t) where-	f <$> x = Yoneda (\k -> yoneda x (k . f))--instance Alternative t => Alternative (Yoneda t) where-	Yoneda f <+> Yoneda g = Yoneda (\k -> f k <+> g k)--instance Applicative t => Applicative (Yoneda t) where-	Yoneda f <*> Yoneda x = Yoneda (\g -> f (g .) <*> x identity)--instance Avoidable t => Avoidable (Yoneda t) where-	empty = Yoneda (empty !)--instance Pointable t => Pointable (Yoneda t) where-	point x = Yoneda (\f -> point $ f x)--instance Extractable t => Extractable (Yoneda t) where-	extract (Yoneda f) = extract $ f identity--instance Liftable Yoneda where-	lift x = Yoneda (\f -> f <$> x)--instance (Extractable t, Pointable t, Extractable u, Pointable u) => Adjoint (Yoneda t) (Yoneda u) where-	x -| f = point . f . point $ x-	x |- g = extract . extract $ g <$> x
Pandora/Paradigm/Controlflow/Joint/Schemes.hs view
@@ -1,3 +1,5 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}+ module Pandora.Paradigm.Controlflow.Joint.Schemes (module Exports) where  import Pandora.Paradigm.Controlflow.Joint.Schemes.UTU as Exports@@ -5,3 +7,35 @@ import Pandora.Paradigm.Controlflow.Joint.Schemes.TUVW as Exports import Pandora.Paradigm.Controlflow.Joint.Schemes.TUT as Exports import Pandora.Paradigm.Controlflow.Joint.Schemes.TU as Exports++import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Covariant (Covariant)+import Pandora.Pattern.Functor.Adjoint (Adjoint ((-|), (|-)))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Paradigm.Controlflow.Joint.Interpreted (run)++instance (Covariant (TU Covariant Covariant v t), Covariant (TU Covariant Covariant u w), Adjoint t u, Adjoint v w)+	=> Adjoint (TU Covariant Covariant v t) (TU Covariant Covariant u w) where+		TU y |- g = y |- (|- run . g)+		x -| f = TU $ x -| (-| f . TU)++instance (Covariant (TU Covariant Covariant v t), Covariant (UT Covariant Covariant w u), Adjoint t u, Adjoint v w)+	=> Adjoint (TU Covariant Covariant v t) (UT Covariant Covariant w u) where+		TU t |- g = t |- (|- run . g)+		x -| f = UT $ x -| (-| f . TU)++instance (Covariant (UT Covariant Covariant t v), Covariant (UT Covariant Covariant w u), Adjoint t u, Adjoint v w)+	=> Adjoint (UT Covariant Covariant t v) (UT Covariant Covariant w u) where+		UT t |- g = t |- (|- run . g)+		x -| f = UT $ x -| (-| f . UT)++instance (Covariant (UT Covariant Covariant t v), Covariant (TU Covariant Covariant w u) , Adjoint v u, Adjoint t w)+	=> Adjoint (UT Covariant Covariant t v) (TU Covariant Covariant w u) where+		UT t |- g = t |- (|- run . g)+		x -| f = TU $ x -| (-| f . UT)++instance (Covariant (TUT Covariant Covariant Covariant t u t'), Covariant (TUT Covariant Covariant Covariant v w v')+	, Adjoint t w, Adjoint t' v', Adjoint t v, Adjoint u v, Adjoint v' t')+	=> Adjoint (TUT Covariant Covariant Covariant t u t') (TUT Covariant Covariant Covariant v w v') where+		TUT t |- g = t |- (|- (|- run . g))+		x -| f = TUT $ x -| (-| (-| f . TUT))
Pandora/Paradigm/Controlflow/Joint/Schemes/TUT.hs view
@@ -1,6 +1,16 @@ module Pandora.Paradigm.Controlflow.Joint.Schemes.TUT (TUT (..)) where +import Pandora.Pattern.Category (identity) import Pandora.Core.Functor (type (:.), type (:=))+import Pandora.Pattern.Functor.Covariant (Covariant)+import Pandora.Pattern.Functor.Pointable (Pointable)+import Pandora.Pattern.Functor.Applicative (Applicative)+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Distributive (Distributive ((>>-)))+import Pandora.Pattern.Functor.Adjoint (Adjoint ((-|), (|-)))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Transformer.Liftable (Liftable (lift))+import Pandora.Pattern.Transformer.Lowerable (Lowerable (lower)) import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))  newtype TUT ct ct' cu t t' u a = TUT (t :. u :. t' := a)@@ -8,3 +18,11 @@ instance Interpreted (TUT ct ct' cu t t' u) where 	type Primary (TUT ct ct' cu t t' u) a = t :. u :. t' := a 	run (TUT x) = x++instance (Adjoint t' t, Applicative t, Pointable t, forall u . Traversable u)+	=> Liftable (TUT Covariant Covariant Covariant t t') where+		lift x = TUT $ x ->> (-| identity)++instance (Adjoint t t', Distributive t')+	=> Lowerable (TUT Covariant Covariant Covariant t t') where+		lower (TUT x) = x |- (>>- identity)
Pandora/Paradigm/Controlflow/Joint/Transformer/Comonadic.hs view
@@ -3,8 +3,6 @@ module Pandora.Paradigm.Controlflow.Joint.Transformer.Comonadic (Comonadic (..), (:<) (..)) where  import Pandora.Core.Functor (type (~>))-import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))-import Pandora.Paradigm.Controlflow.Joint.Schematic (Schematic) import Pandora.Pattern.Category ((.)) import Pandora.Pattern.Functor.Covariant (Covariant ((<$>))) import Pandora.Pattern.Functor.Pointable (Pointable (point))@@ -17,6 +15,8 @@ import Pandora.Pattern.Functor.Extendable (Extendable ((=>>))) import Pandora.Pattern.Functor.Comonad (Comonad) import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))+import Pandora.Paradigm.Controlflow.Joint.Schematic (Schematic)  class Interpreted t => Comonadic t where 	{-# MINIMAL flick, bring #-}
Pandora/Paradigm/Controlflow/Joint/Transformer/Monadic.hs view
@@ -3,8 +3,6 @@ module Pandora.Paradigm.Controlflow.Joint.Transformer.Monadic (Monadic (..), (:>) (..)) where  import Pandora.Core.Functor (type (~>))-import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))-import Pandora.Paradigm.Controlflow.Joint.Schematic (Schematic) import Pandora.Pattern.Category ((.)) import Pandora.Pattern.Functor.Covariant (Covariant ((<$>))) import Pandora.Pattern.Functor.Pointable (Pointable (point))@@ -17,6 +15,8 @@ import Pandora.Pattern.Functor.Extendable (Extendable ((=>>))) import Pandora.Pattern.Functor.Monad (Monad) import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))+import Pandora.Paradigm.Controlflow.Joint.Schematic (Schematic)  class Interpreted t => Monadic t where 	{-# MINIMAL lay, wrap #-}
Pandora/Paradigm/Controlflow/Observable.hs view
@@ -2,9 +2,9 @@ 	notify, follow, subscribe, watch, (.:~.), (.:~*), (*:~.), (*:~*)) where  import Pandora.Pattern.Category ((.))-import Pandora.Paradigm.Basis.Continuation (Continuation (Continuation, continue)) import Pandora.Pattern.Functor.Applicative (Applicative (forever)) import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Paradigm.Primary.Transformer.Continuation (Continuation (Continuation, continue))  newtype Capture r t a = Capture { captured :: t r } 
Pandora/Paradigm/Controlflow/Pipeline.hs view
@@ -1,11 +1,11 @@ module Pandora.Paradigm.Controlflow.Pipeline (Pipeline, await, yield, finish, impact, (=*=), pipeline) where -import Pandora.Paradigm.Basis.Continuation (Continuation (Continuation, continue)) import Pandora.Pattern.Functor.Covariant (Covariant ((<$>))) import Pandora.Pattern.Functor.Contravariant (Contravariant ((>$<))) import Pandora.Pattern.Functor.Pointable (Pointable (point)) import Pandora.Pattern.Functor.Bindable (Bindable ((>>=))) import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Paradigm.Primary.Transformer.Continuation (Continuation (Continuation, continue))  newtype Producer i t r = Producer { produce :: Consumer i t r -> t r } 
Pandora/Paradigm/Inventory.hs view
@@ -1,3 +1,5 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}+ module Pandora.Paradigm.Inventory (module Exports) where  import Pandora.Paradigm.Inventory.Optics as Exports@@ -7,3 +9,23 @@ import Pandora.Paradigm.Inventory.Equipment as Exports import Pandora.Paradigm.Inventory.Environment as Exports import Pandora.Paradigm.Inventory.Accumulator as Exports++import Pandora.Core.Morphism ((!), (%))+import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Extractable (extract)+import Pandora.Pattern.Functor.Adjoint (Adjoint ((-|), (|-)))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Paradigm.Primary.Functor.Product (Product ((:*:)))+import Pandora.Paradigm.Controlflow.Joint.Interpreted (run)++instance Adjoint (Store s) (State s) where+	x -| f = State $ \s -> (:*:) s . f . Store $ s :*: (x !)+	Store (s :*: f) |- g = extract . run % s . g $ f s++instance Adjoint (Accumulator e) (Imprint e) where+	x -| f = Imprint $ x -| f . Accumulator+	x |- g = run x |- run . g++instance Adjoint (Equipment e) (Environment e) where+	x -| f = Environment $ x -| f . Equipment+	x |- g = run x |- run . g
Pandora/Paradigm/Inventory/Accumulator.hs view
@@ -2,7 +2,7 @@  module Pandora.Paradigm.Inventory.Accumulator (Accumulator (..), Accumulated, gather) where -import Pandora.Paradigm.Basis.Product (Product ((:*:)), type (:*:))+import Pandora.Paradigm.Primary.Functor.Product (Product ((:*:)), type (:*:)) import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run)) import Pandora.Paradigm.Controlflow.Joint.Transformer.Monadic (Monadic (lay, wrap), (:>) (TM)) import Pandora.Paradigm.Controlflow.Joint.Schematic (Schematic)
Pandora/Paradigm/Inventory/Equipment.hs view
@@ -2,7 +2,7 @@  module Pandora.Paradigm.Inventory.Equipment (Equipment (..), retrieve) where -import Pandora.Paradigm.Basis.Product (Product ((:*:)), type (:*:), attached)+import Pandora.Paradigm.Primary.Functor.Product (Product ((:*:)), type (:*:), attached) import Pandora.Paradigm.Controlflow.Joint.Adaptable (Adaptable (adapt)) import Pandora.Paradigm.Controlflow.Joint.Transformer.Comonadic (Comonadic (flick, bring), (:<) (TC)) import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))
Pandora/Paradigm/Inventory/Optics.hs view
@@ -3,22 +3,15 @@ module Pandora.Paradigm.Inventory.Optics (Lens, type (:-.), (|>), view, set, over, zoom, (^.), (.~), (%~)) where  import Pandora.Core.Functor (type (|->))-import Pandora.Core.Morphism ((!), (%))-import Pandora.Paradigm.Basis.Product (Product ((:*:)))+import Pandora.Paradigm.Primary.Functor.Product (Product ((:*:))) import Pandora.Paradigm.Controlflow.Joint.Adaptable (adapt)-import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (run)) import Pandora.Paradigm.Inventory.State (State (State), Stateful) import Pandora.Paradigm.Inventory.Store (Store (Store), access, position, retrofit) import Pandora.Pattern.Category (identity, (.)) import Pandora.Pattern.Functor.Covariant (Covariant ((<$))) import Pandora.Pattern.Functor.Extractable (Extractable (extract))-import Pandora.Pattern.Functor.Adjoint (Adjoint ((-|), (|-))) import Pandora.Pattern.Functor.Divariant (($)) import Pandora.Pattern.Functor.Bivariant ((<->))--instance Adjoint (Store s) (State s) where-	v -| f = State $ \s -> (:*:) s . f . Store $ s :*: (v !)-	Store (s :*: f) |- g = extract . run % s . g $ f s  infixr 0 :-. type (:-.) src tgt = Lens src tgt
Pandora/Paradigm/Inventory/State.hs view
@@ -6,7 +6,7 @@ import Pandora.Core.Morphism ((%)) import Pandora.Pattern.Category ((.)) import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), ($>), (<$$>)))-import Pandora.Pattern.Functor.Extractable (Extractable (extract))+import Pandora.Pattern.Functor.Extractable (extract) import Pandora.Pattern.Functor.Avoidable (Avoidable (empty)) import Pandora.Pattern.Functor.Pointable (Pointable (point)) import Pandora.Pattern.Functor.Applicative (Applicative ((<*>), (*>)))@@ -14,6 +14,7 @@ import Pandora.Pattern.Functor.Traversable (Traversable ((->>))) import Pandora.Pattern.Functor.Bindable (Bindable ((>>=))) import Pandora.Pattern.Functor.Monad (Monad)+import Pandora.Pattern.Functor.Adjoint ((|-)) import Pandora.Pattern.Functor.Divariant (($)) import Pandora.Pattern.Object.Setoid (bool) import Pandora.Paradigm.Controlflow.Joint.Adaptable (Adaptable (adapt))@@ -21,8 +22,8 @@ import Pandora.Paradigm.Controlflow.Joint.Transformer.Monadic (Monadic (lay, wrap), (:>) (TM)) import Pandora.Paradigm.Controlflow.Joint.Schematic (Schematic) import Pandora.Paradigm.Controlflow.Joint.Schemes.TUT (TUT (TUT))-import Pandora.Paradigm.Basis.Predicate (Predicate (predicate))-import Pandora.Paradigm.Basis.Product (Product ((:*:)), type (:*:), attached, delta, uncurry)+import Pandora.Paradigm.Primary.Functor.Predicate (Predicate (predicate))+import Pandora.Paradigm.Primary.Functor.Product (Product ((:*:)), type (:*:), delta)  newtype State s a = State ((->) s :. (:*:) s := a) @@ -31,15 +32,14 @@  instance Applicative (State s) where 	State f <*> State x = State $ \old ->-		let latest = attached . x $ old in-			latest :*: (extract (f old) . extract . x $ old)+		let (new :*: g) = f old in g <$> x new  instance Pointable (State s) where 	point x = State $ \s -> s :*: x  instance Bindable (State s) where 	State x >>= f = State $ \old ->-		uncurry (run %) $ f <$> x old+		(|- run) $ f <$> x old  instance Monad (State s) where 
Pandora/Paradigm/Inventory/Store.hs view
@@ -10,7 +10,7 @@ import Pandora.Pattern.Functor.Extendable (Extendable ((=>>))) import Pandora.Pattern.Functor.Comonad (Comonad) import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Paradigm.Basis.Product (Product ((:*:)), type (:*:), attached)+import Pandora.Paradigm.Primary.Functor.Product (Product ((:*:)), type (:*:), attached) import Pandora.Paradigm.Controlflow.Joint.Adaptable (Adaptable (adapt)) import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run)) import Pandora.Paradigm.Controlflow.Joint.Schematic (Schematic)
+ Pandora/Paradigm/Primary.hs view
@@ -0,0 +1,4 @@+module Pandora.Paradigm.Primary (module Exports) where++import Pandora.Paradigm.Primary.Functor as Exports+import Pandora.Paradigm.Primary.Transformer as Exports
+ Pandora/Paradigm/Primary/Functor.hs view
@@ -0,0 +1,47 @@+module Pandora.Paradigm.Primary.Functor (module Exports, note, hush, left, right, this, that) where++import Pandora.Paradigm.Primary.Functor.Fix as Exports+import Pandora.Paradigm.Primary.Functor.Predicate as Exports+import Pandora.Paradigm.Primary.Functor.Variation as Exports+import Pandora.Paradigm.Primary.Functor.Validation as Exports+import Pandora.Paradigm.Primary.Functor.Wye as Exports+import Pandora.Paradigm.Primary.Functor.Edges as Exports+import Pandora.Paradigm.Primary.Functor.Conclusion as Exports+import Pandora.Paradigm.Primary.Functor.Maybe as Exports+import Pandora.Paradigm.Primary.Functor.Endo as Exports+import Pandora.Paradigm.Primary.Functor.Proxy as Exports+import Pandora.Paradigm.Primary.Functor.Tagged as Exports+import Pandora.Paradigm.Primary.Functor.Product as Exports+import Pandora.Paradigm.Primary.Functor.Constant as Exports+import Pandora.Paradigm.Primary.Functor.Identity as Exports++import Pandora.Core.Morphism ((!))+import Pandora.Core.Functor (type (~>))++note :: e -> Maybe ~> Conclusion e+note x = maybe (Failure x) Success++hush :: Conclusion e ~> Maybe+hush = conclusion (Nothing !) Just++left :: Wye ~> Maybe+left (Both ls _) = Just ls+left (Left ls) = Just ls+left (Right _) = Nothing+left End = Nothing++right :: Wye ~> Maybe+right (Both _ rs) = Just rs+right (Left _) = Nothing+right (Right rs) = Just rs+right End = Nothing++this :: Variation e ~> Maybe+this (This x) = Just x+this (That _) = Nothing+this (These _ x) = Just x++that :: Variation e a -> Maybe e+that (This _) = Nothing+that (That x) = Just x+that (These y _) = Just y
+ Pandora/Paradigm/Primary/Functor/Conclusion.hs view
@@ -0,0 +1,105 @@+module Pandora.Paradigm.Primary.Functor.Conclusion (Conclusion (..), Failable, conclusion, fail, failure) where++import Pandora.Core.Functor (type (~>))+import Pandora.Pattern.Category ((.))+import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))+import Pandora.Paradigm.Controlflow.Joint.Transformer.Monadic (Monadic (lay, wrap), (:>) (TM))+import Pandora.Paradigm.Controlflow.Joint.Schematic (Schematic)+import Pandora.Paradigm.Controlflow.Joint.Adaptable (Adaptable (adapt))+import Pandora.Paradigm.Controlflow.Joint.Schemes.UT (UT (UT))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), (<$$>)))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>), apply))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))+import Pandora.Pattern.Functor.Monad (Monad)+import Pandora.Pattern.Functor.Bivariant (Bivariant ((<->)))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Object.Setoid (Setoid ((==)), Boolean (False))+import Pandora.Pattern.Object.Chain (Chain ((<=>)), Ordering (Less, Greater))+import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))++data Conclusion e a = Failure e | Success a++instance Covariant (Conclusion e) where+	f <$> Success x = Success $ f x+	_ <$> Failure y = Failure y++instance Pointable (Conclusion e) where+	point = Success++instance Applicative (Conclusion e) where+	Success f <*> x = f <$> x+	Failure y <*> _ = Failure y++instance Alternative (Conclusion e) where+	Failure _ <+> x = x+	Success x <+> _ = Success x++instance Traversable (Conclusion e) where+	Failure y ->> _ = point $ Failure y+	Success x ->> f = Success <$> f x++instance Bindable (Conclusion e) where+	Success x >>= f = f x+	Failure y >>= _ = Failure y++instance Monad (Conclusion e) where++instance Bivariant Conclusion where+    f <-> g = conclusion (Failure . f) (Success . g)++instance (Setoid e, Setoid a) => Setoid (Conclusion e a) where+	Success x == Success y = x == y+	Failure x == Failure y = x == y+	_ == _ = False++instance (Chain e, Chain a) => Chain (Conclusion e a) where+	Success x <=> Success y = x <=> y+	Failure x <=> Failure y = x <=> y+	Failure _ <=> Success _ = Less+	Success _ <=> Failure _ = Greater++instance (Semigroup e, Semigroup a) => Semigroup (Conclusion e a) where+	Success x + Success y = Success $ x + y+	Failure x + Failure y = Failure $ x + y+	Failure _ + Success y = Success y+	Success x + Failure _ = Success x++conclusion :: (e -> r) -> (a -> r) -> Conclusion e a -> r+conclusion f _ (Failure x) = f x+conclusion _ s (Success x) = s x++fail :: (e -> r) -> Conclusion e ~> Conclusion r+fail f (Failure x) = Failure $ f x+fail _ (Success y) = Success y++instance Interpreted (Conclusion e) where+	type Primary (Conclusion e) a = Conclusion e a+	run x = x++type instance Schematic Monad (Conclusion e) u = UT Covariant Covariant (Conclusion e) u++instance Monadic (Conclusion e) where+	lay x = TM . UT $ Success <$> x+	wrap x = TM . UT . point $ x++type Failable e = Adaptable (Conclusion e)++instance Covariant u => Covariant (UT Covariant Covariant (Conclusion e) u) where+	f <$> UT x = UT $ f <$$> x++instance Applicative u => Applicative (UT Covariant Covariant (Conclusion e) u) where+	UT f <*> UT x = UT $ apply <$> f <*> x++instance Pointable u => Pointable (UT Covariant Covariant (Conclusion e) u) where+	point = UT . point . point++instance (Pointable u, Bindable u) => Bindable (UT Covariant Covariant (Conclusion e) u) where+	UT x >>= f = UT $ x >>= conclusion (point . Failure) (run . f)++instance Monad u => Monad (UT Covariant Covariant (Conclusion e) u) where++failure :: Failable e t => e -> t a+failure = adapt . Failure
+ Pandora/Paradigm/Primary/Functor/Constant.hs view
@@ -0,0 +1,64 @@+module Pandora.Paradigm.Primary.Functor.Constant (Constant (..)) where++import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Contravariant (Contravariant ((>$<)))+import Pandora.Pattern.Functor.Invariant (Invariant (invmap))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Bivariant (Bivariant ((<->)))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Object.Setoid (Setoid ((==)))+import Pandora.Pattern.Object.Chain (Chain ((<=>)))+import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))+import Pandora.Pattern.Object.Monoid (Monoid (zero))+import Pandora.Pattern.Object.Ringoid (Ringoid ((*)))+import Pandora.Pattern.Object.Quasiring (Quasiring (one))+import Pandora.Pattern.Object.Semilattice (Infimum ((/\)), Supremum ((\/)))+import Pandora.Pattern.Object.Lattice (Lattice)+import Pandora.Pattern.Object.Group (Group (invert))++newtype Constant a b = Constant a++instance Covariant (Constant a) where+	_ <$> Constant x = Constant x++instance Contravariant (Constant a) where+	_ >$< Constant x = Constant x++instance Invariant (Constant a) where+	invmap _ _ (Constant x) = Constant x++instance Traversable (Constant a) where+	Constant x ->> _ = point (Constant x)++instance Bivariant Constant where+	f <-> _ = \(Constant x) -> Constant $ f x++instance Setoid a => Setoid (Constant a b) where+	Constant x == Constant y = x == y++instance Chain a => Chain (Constant a b) where+	Constant x <=> Constant y = x <=> y++instance Semigroup a => Semigroup (Constant a b) where+	Constant x + Constant y = Constant $ x + y++instance Monoid a => Monoid (Constant a b) where+	 zero = Constant zero++instance Ringoid a => Ringoid (Constant a b) where+	Constant x * Constant y = Constant $ x * y++instance Quasiring a => Quasiring (Constant a b) where+	 one = Constant one++instance Infimum a => Infimum (Constant a b) where+	Constant x /\ Constant y = Constant $ x /\ y++instance Supremum a => Supremum (Constant a b) where+	Constant x \/ Constant y = Constant $ x \/ y++instance Lattice a => Lattice (Constant a b) where++instance Group a => Group (Constant a b) where+	invert (Constant x) = Constant $ invert x
+ Pandora/Paradigm/Primary/Functor/Edges.hs view
@@ -0,0 +1,26 @@+module Pandora.Paradigm.Primary.Functor.Edges (Edges (..), edges) where++import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Divariant (($))++data Edges a = Empty | Leap a | Connect a | Overlay a++instance Covariant Edges where+	_ <$> Empty = Empty+	f <$> Connect x = Connect $ f x+	f <$> Overlay x = Overlay $ f x+	f <$> Leap x = Leap $ f x++instance Traversable Edges where+	Empty ->> _ = point Empty+	Connect x ->> f = Connect <$> f x+	Overlay x ->> f = Overlay <$> f x+	Leap x ->> f = Leap <$> f x++edges :: r -> (a -> r) -> (a -> r) -> (a -> r) -> Edges a -> r+edges r _ _ _ Empty = r+edges _ f _ _ (Connect x) = f x+edges _ _ g _ (Overlay y) = g y+edges _ _ _ h (Leap z) = h z
+ Pandora/Paradigm/Primary/Functor/Endo.hs view
@@ -0,0 +1,17 @@+module Pandora.Paradigm.Primary.Functor.Endo (Endo (..)) where++import Pandora.Pattern.Category (identity, (.))+import Pandora.Pattern.Functor.Invariant (Invariant (invmap))+import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))+import Pandora.Pattern.Object.Monoid (Monoid (zero))++newtype Endo a = Endo { endo :: a -> a }++instance Invariant Endo where+	invmap f g (Endo x) = Endo (f . x . g)++instance Semigroup (Endo a) where+	Endo f + Endo g = Endo (g . f)++instance Monoid (Endo a) where+	zero = Endo identity
+ Pandora/Paradigm/Primary/Functor/Fix.hs view
@@ -0,0 +1,16 @@+module Pandora.Paradigm.Primary.Functor.Fix (Fix (..), cata, ana, hylo) where++import Pandora.Core.Functor (type (<-|), type (|->))+import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Covariant (Covariant (comap))++newtype Fix t = Fix { unfix :: t (Fix t) }++cata :: Covariant t => (a <-| t) -> Fix t -> a+cata f = f . comap (cata f) . unfix++ana :: Covariant t => (a |-> t) -> a -> Fix t+ana f = Fix . comap (ana f) . f++hylo :: Covariant t => (b <-| t) -> (a |-> t) -> (a -> b)+hylo phi psi = cata phi . ana psi
+ Pandora/Paradigm/Primary/Functor/Identity.hs view
@@ -0,0 +1,87 @@+module Pandora.Paradigm.Primary.Functor.Identity (Identity (..)) where++import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), comap))+import Pandora.Pattern.Functor.Extractable (Extractable (extract))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Distributive (Distributive ((>>-)))+import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))+import Pandora.Pattern.Functor.Extendable (Extendable ((=>>)))+import Pandora.Pattern.Functor.Monad (Monad)+import Pandora.Pattern.Functor.Comonad (Comonad)+import Pandora.Pattern.Functor.Adjoint (Adjoint ((-|), (|-)))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Object.Setoid (Setoid ((==)))+import Pandora.Pattern.Object.Chain (Chain ((<=>)))+import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))+import Pandora.Pattern.Object.Monoid (Monoid (zero))+import Pandora.Pattern.Object.Ringoid (Ringoid ((*)))+import Pandora.Pattern.Object.Quasiring (Quasiring (one))+import Pandora.Pattern.Object.Semilattice (Infimum ((/\)), Supremum ((\/)))+import Pandora.Pattern.Object.Lattice (Lattice)+import Pandora.Pattern.Object.Group (Group (invert))++newtype Identity a = Identity a++instance Covariant Identity where+	f <$> Identity x = Identity $ f x++instance Pointable Identity where+	point = Identity++instance Extractable Identity where+	extract (Identity x) = x++instance Applicative Identity where+	Identity f <*> Identity x = Identity $ f x++instance Traversable Identity where+	Identity x ->> f = Identity <$> f x++instance Distributive Identity where+	x >>- f = Identity $ extract . f <$> x++instance Bindable Identity where+	Identity x >>= f = f x++instance Monad Identity++instance Extendable Identity where+	x =>> f = Identity . f $ x++instance Comonad Identity++instance Adjoint Identity Identity where+	x -| f = Identity . f . Identity $ x+	x |- g = extract . extract . comap g $ x++instance Setoid a => Setoid (Identity a) where+	Identity x == Identity y = x == y++instance Chain a => Chain (Identity a) where+	Identity x <=> Identity y = x <=> y++instance Semigroup a => Semigroup (Identity a) where+	Identity x + Identity y = Identity $ x + y++instance Monoid a => Monoid (Identity a) where+	 zero = Identity zero++instance Ringoid a => Ringoid (Identity a) where+	Identity x * Identity y = Identity $ x * y++instance Quasiring a => Quasiring (Identity a) where+	 one = Identity one++instance Infimum a => Infimum (Identity a) where+	Identity x /\ Identity y = Identity $ x /\ y++instance Supremum a => Supremum (Identity a) where+	Identity x \/ Identity y = Identity $ x \/ y++instance Lattice a => Lattice (Identity a) where++instance Group a => Group (Identity a) where+	invert (Identity x) = Identity $ invert x
+ Pandora/Paradigm/Primary/Functor/Maybe.hs view
@@ -0,0 +1,117 @@+module Pandora.Paradigm.Primary.Functor.Maybe (Maybe (..), Optional, maybe, nothing) where++import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))+import Pandora.Paradigm.Controlflow.Joint.Transformer.Monadic (Monadic (lay, wrap), (:>) (TM))+import Pandora.Paradigm.Controlflow.Joint.Schematic (Schematic)+import Pandora.Paradigm.Controlflow.Joint.Adaptable (Adaptable (adapt))+import Pandora.Paradigm.Controlflow.Joint.Schemes.UT (UT (UT))+import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), (<$$>)))+import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>), apply))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))+import Pandora.Pattern.Functor.Monad (Monad)+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Object.Setoid (Setoid ((==)), Boolean (True, False))+import Pandora.Pattern.Object.Chain (Chain ((<=>)), Ordering (Less, Equal, Greater))+import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))+import Pandora.Pattern.Object.Monoid (Monoid (zero))+import Pandora.Pattern.Object.Semilattice (Infimum ((/\)), Supremum ((\/)))+import Pandora.Pattern.Object.Lattice (Lattice)++data Maybe a = Nothing | Just a++instance Covariant Maybe where+	f <$> Just x = Just $ f x+	_ <$> Nothing = Nothing++instance Pointable Maybe where+	point = Just++instance Avoidable Maybe where+	empty = Nothing++instance Applicative Maybe where+	Just f <*> x = f <$> x+	Nothing <*> _ = Nothing++instance Alternative Maybe where+	Nothing <+> y = y+	Just x <+> _ = Just x++instance Traversable Maybe where+	Nothing ->> _ = point Nothing+	Just x ->> f = Just <$> f x++instance Bindable Maybe where+	Just x >>= f = f x+	Nothing >>= _ = Nothing++instance Monad Maybe where++instance Setoid a => Setoid (Maybe a) where+	Just x == Just y = x == y+	Nothing == Nothing = True+	_ == _ = False++instance Chain a => Chain (Maybe a) where+	Just x <=> Just y = x <=> y+	Nothing <=> Nothing = Equal+	Nothing <=> Just _ = Less+	Just _ <=> Nothing = Greater++instance Semigroup a => Semigroup (Maybe a) where+	Just x + Just y = Just $ x + y+	Nothing + x = x+	x + Nothing = x++instance Semigroup a => Monoid (Maybe a) where+	zero = Nothing++instance Infimum a => Infimum (Maybe a) where+	Just x /\ Just y = Just $ x /\ y+	_ /\ Nothing = Nothing+	Nothing /\ _ = Nothing++instance Supremum a => Supremum (Maybe a) where+	Just x \/ Just y = Just $ x \/ y+	x \/ Nothing = x+	Nothing \/ x = x++instance Lattice a => Lattice (Maybe a) where++maybe :: b -> (a -> b) -> Maybe a -> b+maybe x _ Nothing = x+maybe _ f (Just y) = f y++type instance Schematic Monad Maybe u = UT Covariant Covariant Maybe u++instance Interpreted Maybe where+	type Primary Maybe a = Maybe a+	run x = x++instance Monadic Maybe where+	lay x = TM . UT $ Just <$> x+	wrap x = TM . UT . point $ x++type Optional = Adaptable Maybe++instance Covariant u => Covariant (UT Covariant Covariant Maybe u) where+	f <$> UT x = UT $ f <$$> x++instance Applicative u => Applicative (UT Covariant Covariant Maybe u) where+	UT f <*> UT x = UT $ apply <$> f <*> x++instance Pointable u => Pointable (UT Covariant Covariant Maybe u) where+	point = UT . point . point++instance (Pointable u, Bindable u) => Bindable (UT Covariant Covariant Maybe u) where+	UT x >>= f = UT $ x >>= maybe (point Nothing) (run . f)++instance Monad u => Monad (UT Covariant Covariant Maybe u) where++nothing :: Optional t => t a+nothing = adapt Nothing
+ Pandora/Paradigm/Primary/Functor/Predicate.hs view
@@ -0,0 +1,16 @@+module Pandora.Paradigm.Primary.Functor.Predicate (Predicate (..)) where++import Pandora.Core.Morphism ((!))+import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Contravariant (Contravariant ((>$<)))+import Pandora.Pattern.Functor.Determinable (Determinable (determine))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Object.Setoid (Boolean (True))++newtype Predicate a = Predicate { predicate :: a -> Boolean }++instance Contravariant Predicate where+	f >$< g = Predicate $ predicate g . f++instance Determinable Predicate where+	determine = Predicate (True !)
+ Pandora/Paradigm/Primary/Functor/Product.hs view
@@ -0,0 +1,87 @@+module Pandora.Paradigm.Primary.Functor.Product (Product (..), type (:*:)+	, delta, swap, attached, curry, uncurry) where++import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Extractable (Extractable (extract))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Extendable (Extendable ((=>>)))+import Pandora.Pattern.Functor.Comonad (Comonad)+import Pandora.Pattern.Functor.Adjoint (Adjoint ((-|), (|-)))+import Pandora.Pattern.Functor.Bivariant (Bivariant ((<->)))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Object.Setoid (Setoid ((==)))+import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))+import Pandora.Pattern.Object.Monoid (Monoid (zero))+import Pandora.Pattern.Object.Ringoid (Ringoid ((*)))+import Pandora.Pattern.Object.Quasiring (Quasiring (one))+import Pandora.Pattern.Object.Semilattice (Infimum ((/\)), Supremum ((\/)))+import Pandora.Pattern.Object.Lattice (Lattice)+import Pandora.Pattern.Object.Group (Group (invert))++infixr 1 :*:++data Product a b = a :*: b++type (:*:) = Product++instance Covariant (Product a) where+	f <$> (x :*: y) = x :*: f y++instance Extractable (Product a) where+	extract (_ :*: y) = y++instance Traversable (Product a) where+	(x :*: y) ->> f = (:*:) x <$> f y++instance Extendable (Product a) where+	(x :*: y) =>> f = (:*:) x $ f (x :*: y)++instance Comonad (Product a) where++instance Adjoint (Product a) ((->) a) where+	x -| f = \y -> f $ y :*: x+	(y :*: x) |- f = f x y++instance Bivariant Product where+	f <-> g = \(x :*: y) -> f x :*: g y++instance (Setoid a, Setoid b) => Setoid (Product a b) where+	(x :*: y) == (x' :*: y') = (x == x') * (y == y')++instance (Semigroup a, Semigroup b) => Semigroup (Product a b) where+	(x :*: y) + (x' :*: y') = x + x' :*: y + y'++instance (Monoid a, Monoid b) => Monoid (Product a b) where+	zero = zero :*: zero++instance (Ringoid a, Ringoid b) => Ringoid (Product a b) where+	(x :*: y) * (x' :*: y') = x * x' :*: y * y'++instance (Quasiring a, Quasiring b) => Quasiring (Product a b) where+	one = one :*: one++instance (Infimum a, Infimum b) => Infimum (Product a b) where+	(x :*: y) /\ (x' :*: y') = x /\ x' :*: y /\ y'++instance (Supremum a, Supremum b) => Supremum (Product a b) where+	(x :*: y) \/ (x' :*: y') = x \/ x' :*: y \/ y'++instance (Lattice a, Lattice b) => Lattice (Product a b) where++instance (Group a, Group b) => Group (Product a b) where+	invert (x :*: y) = invert x :*: invert y++delta :: a -> a :*: a+delta x = x :*: x++swap :: a :*: b -> b :*: a+swap (x :*: y) = y :*: x++attached :: a :*: b -> a+attached (x :*: _) = x++curry :: (a :*: b -> c) -> a -> b -> c+curry f x y = f $ x :*: y++uncurry :: (a -> b -> c) -> (a :*: b -> c)+uncurry f (x :*: y) = f x y
+ Pandora/Paradigm/Primary/Functor/Proxy.hs view
@@ -0,0 +1,39 @@+module Pandora.Paradigm.Primary.Functor.Proxy where++import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Contravariant (Contravariant ((>$<)))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))+import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))+import Pandora.Pattern.Functor.Distributive (Distributive ((>>-)))+import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))+import Pandora.Pattern.Functor.Extendable (Extendable ((=>>)))+import Pandora.Pattern.Functor.Monad (Monad)++data Proxy a = Proxy++instance Covariant Proxy where+	_ <$> Proxy = Proxy++instance Contravariant Proxy where+	_ >$< _ = Proxy++instance Pointable Proxy where+	point _ = Proxy++instance Applicative Proxy where+	_ <*> _ = Proxy++instance Alternative Proxy where+	_ <+> _ = Proxy++instance Distributive Proxy where+	_ >>- _ = Proxy++instance Bindable Proxy where+	_ >>= _ = Proxy++instance Monad Proxy++instance Extendable Proxy where+	_ =>> _ = Proxy
+ Pandora/Paradigm/Primary/Functor/Tagged.hs view
@@ -0,0 +1,96 @@+module Pandora.Paradigm.Primary.Functor.Tagged (Tagged (..), retag, tagself, type (:#)) where++import Pandora.Core.Functor (type (|->), type (~>))+import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Extractable (Extractable (extract))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Distributive (Distributive ((>>-)))+import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))+import Pandora.Pattern.Functor.Extendable (Extendable ((=>>)))+import Pandora.Pattern.Functor.Monad (Monad)+import Pandora.Pattern.Functor.Comonad (Comonad)+import Pandora.Pattern.Functor.Bivariant (Bivariant ((<->)))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Object.Setoid (Setoid ((==)))+import Pandora.Pattern.Object.Chain (Chain ((<=>)))+import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))+import Pandora.Pattern.Object.Monoid (Monoid (zero))+import Pandora.Pattern.Object.Ringoid (Ringoid ((*)))+import Pandora.Pattern.Object.Quasiring (Quasiring (one))+import Pandora.Pattern.Object.Semilattice (Infimum ((/\)), Supremum ((\/)))+import Pandora.Pattern.Object.Lattice (Lattice)+import Pandora.Pattern.Object.Group (Group (invert))++newtype Tagged tag a = Tag a++infixr 0 :#+type (:#) tag = Tagged tag++instance Covariant (Tagged tag) where+	f <$> Tag x = Tag $ f x++instance Pointable (Tagged tag) where+	point = Tag++instance Extractable (Tagged tag) where+	extract (Tag x) = x++instance Applicative (Tagged tag) where+	Tag f <*> Tag x = Tag $ f x++instance Traversable (Tagged tag) where+	Tag x ->> f = Tag <$> f x++instance Distributive (Tagged tag) where+	x >>- f = Tag $ extract . f <$> x++instance Bindable (Tagged tag) where+	Tag x >>= f = f x++instance Monad (Tagged tag)++instance Extendable (Tagged tag) where+	x =>> f = Tag . f $ x++instance Comonad (Tagged tag)++instance Bivariant Tagged where+	_ <-> g = \(Tag x) -> Tag $ g x++instance Setoid a => Setoid (Tagged tag a) where+	Tag x == Tag y = x == y++instance Chain a => Chain (Tagged tag a) where+	Tag x <=> Tag y = x <=> y++instance Semigroup a => Semigroup (Tagged tag a) where+	Tag x + Tag y = Tag $ x + y++instance Monoid a => Monoid (Tagged tag a) where+	 zero = Tag zero++instance Ringoid a => Ringoid (Tagged tag a) where+	Tag x * Tag y = Tag $ x * y++instance Quasiring a => Quasiring (Tagged tag a) where+	one = Tag one++instance Infimum a => Infimum (Tagged tag a) where+	Tag x /\ Tag y = Tag $ x /\ y++instance Supremum a => Supremum (Tagged tag a) where+	Tag x \/ Tag y = Tag $ x \/ y++instance Lattice a => Lattice (Tagged tag a) where++instance Group a => Group (Tagged tag a) where+	invert (Tag x) = Tag $ invert x++retag :: Tagged old ~> Tagged new+retag (Tag x) = Tag x++tagself :: a |-> Tagged a+tagself = Tag
+ Pandora/Paradigm/Primary/Functor/Validation.hs view
@@ -0,0 +1,60 @@+module Pandora.Paradigm.Primary.Functor.Validation (Validation (..)) where++import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))+import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Bivariant (Bivariant ((<->)))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Object.Setoid (Setoid ((==)), Boolean (False))+import Pandora.Pattern.Object.Chain (Chain ((<=>)), Ordering (Less, Greater))+import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))++data Validation e a = Flaws e | Validated a++instance Covariant (Validation e) where+	_ <$> Flaws e = Flaws e+	f <$> Validated x = Validated $ f x++instance Pointable (Validation e) where+	point = Validated++instance Semigroup e => Applicative (Validation e) where+	Flaws e <*> Flaws e' = Flaws $ e + e'+	Flaws e <*> Validated _ = Flaws e+	Validated _ <*> Flaws e' = Flaws e'+	Validated f <*> Validated x = Validated $ f x++instance Alternative (Validation e) where+	Flaws _ <+> x = x+	Validated x <+> _ = Validated x++instance Traversable (Validation e) where+	Validated x ->> f = Validated <$> f x+	Flaws e ->> _ = point $ Flaws e++instance Bivariant Validation where+    f <-> g = validation (Flaws . f) (Validated . g)++instance (Setoid e, Setoid a) => Setoid (Validation e a) where+	Validated x == Validated y = x == y+	Flaws x == Flaws y = x == y+	_ == _ = False++instance (Chain e, Chain a) => Chain (Validation e a) where+	Validated x <=> Validated y = x <=> y+	Flaws x <=> Flaws y = x <=> y+	Flaws _ <=> Validated _ = Less+	Validated _ <=> Flaws _ = Greater++instance (Semigroup e, Semigroup a) => Semigroup (Validation e a) where+	Validated x + Validated y = Validated $ x + y+	Flaws x + Flaws y = Flaws $ x + y+	Flaws _ + Validated y = Validated y+	Validated x + Flaws _ = Validated x++validation :: (e -> r) -> (a -> r) -> Validation e a -> r+validation f _ (Flaws x) = f x+validation _ s (Validated x) = s x
+ Pandora/Paradigm/Primary/Functor/Variation.hs view
@@ -0,0 +1,26 @@+module Pandora.Paradigm.Primary.Functor.Variation (Variation (..), variation) where++import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Divariant (($))++data Variation e a = This a | That e | These e a++instance Covariant (Variation e) where+	f <$> This x = This $ f x+	_ <$> That y = That y+	f <$> These y x = These y (f x)++instance Pointable (Variation e) where+	point = This++instance Traversable (Variation e) where+	This x ->> f = This <$> f x+	That y ->> _ = point $ That y+	These y x ->> f = These y <$> f x++variation :: (a -> r) -> (e -> r) -> (e -> a -> r) -> Variation e a -> r+variation f _ _ (This x) = f x+variation _ g _ (That y) = g y+variation _ _ h (These y x) = h y x
+ Pandora/Paradigm/Primary/Functor/Wye.hs view
@@ -0,0 +1,27 @@+module Pandora.Paradigm.Primary.Functor.Wye (Wye (..), wye) where++import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Divariant (($))++data Wye a = End | Left a | Right a | Both a a++instance Covariant Wye where+	_ <$> End = End+	f <$> Left x = Left $ f x+	f <$> Right y = Right $ f y+	f <$> Both x y = Both (f x) (f y)++instance Traversable Wye where+	End ->> _ = point End+	Left x ->> f = Left <$> f x+	Right y ->> f = Right <$> f y+	Both x y ->> f = Both <$> f x <*> f y++wye :: r -> (a -> r) -> (a -> r) -> (a -> a -> r) -> Wye a -> r+wye r _ _ _ End = r+wye _ f _ _ (Left x) = f x+wye _ _ g _ (Right y) = g y+wye _ _ _ h (Both x y) = h x y
+ Pandora/Paradigm/Primary/Transformer.hs view
@@ -0,0 +1,11 @@+module Pandora.Paradigm.Primary.Transformer (module Exports) where++import Pandora.Paradigm.Primary.Transformer.Yoneda as Exports+import Pandora.Paradigm.Primary.Transformer.Continuation as Exports+import Pandora.Paradigm.Primary.Transformer.Kan as Exports+import Pandora.Paradigm.Primary.Transformer.Jet as Exports+import Pandora.Paradigm.Primary.Transformer.Jack as Exports+import Pandora.Paradigm.Primary.Transformer.Instruction as Exports+import Pandora.Paradigm.Primary.Transformer.Construction as Exports+import Pandora.Paradigm.Primary.Transformer.Reverse as Exports+import Pandora.Paradigm.Primary.Transformer.Backwards as Exports
+ Pandora/Paradigm/Primary/Transformer/Backwards.hs view
@@ -0,0 +1,52 @@+module Pandora.Paradigm.Primary.Transformer.Backwards (Backwards (..)) where++import Pandora.Core.Morphism ((&))+import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Contravariant (Contravariant ((>$<)))+import Pandora.Pattern.Functor.Extractable (Extractable (extract))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Distributive (Distributive ((>>-)))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Transformer.Liftable (Liftable (lift))+import Pandora.Pattern.Transformer.Lowerable (Lowerable (lower))+import Pandora.Pattern.Transformer.Hoistable (Hoistable (hoist))+import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))++newtype Backwards t a = Backwards (t a)++instance Covariant t => Covariant (Backwards t) where+	f <$> Backwards x = Backwards $ f <$> x++instance Pointable t => Pointable (Backwards t) where+	point = Backwards . point++instance Extractable t => Extractable (Backwards t) where+	extract (Backwards x) = extract x++instance Applicative t => Applicative (Backwards t) where+	Backwards f <*> Backwards x = Backwards ((&) <$> x <*> f)++instance Traversable t => Traversable (Backwards t) where+	Backwards x ->> f = Backwards <$> x ->> f++instance Distributive t => Distributive (Backwards t) where+	x >>- f = Backwards $ x >>- run . f++instance Contravariant t => Contravariant (Backwards t) where+	f >$< Backwards x = Backwards $ f >$< x++instance Interpreted (Backwards t) where+	type Primary (Backwards t) a = t a+	run (Backwards x) = x++instance Liftable Backwards where+	lift = Backwards++instance Lowerable Backwards where+	lower = run++instance Hoistable Backwards where+	hoist f (Backwards x) = Backwards $ f x
+ Pandora/Paradigm/Primary/Transformer/Construction.hs view
@@ -0,0 +1,88 @@+module Pandora.Paradigm.Primary.Transformer.Construction (Construction (..), deconstruct, coiterate, section) where++import Pandora.Core.Functor (type (:.), type (:=), type (|->), type (~>))+import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), (<$$>)))+import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Extractable (Extractable (extract))+import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>), (<**>)))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>), (->>>)))+import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))+import Pandora.Pattern.Functor.Extendable (Extendable ((=>>), extend))+import Pandora.Pattern.Functor.Monad (Monad)+import Pandora.Pattern.Functor.Comonad (Comonad)+import Pandora.Pattern.Transformer.Lowerable (Lowerable (lower))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Object.Setoid (Setoid ((==)))+import Pandora.Pattern.Object.Semigroup (Semigroup ((+)))+import Pandora.Pattern.Object.Ringoid ((*))+import Pandora.Pattern.Object.Monoid (Monoid (zero))+import Pandora.Paradigm.Controlflow.Joint.Schemes.TU (TU (TU))++data Construction t a = Construct a (t :. Construction t := a)++instance Covariant t => Covariant (Construction t) where+	f <$> Construct x xs = Construct (f x) $ f <$$> xs++instance Avoidable t => Pointable (Construction t) where+	point x = Construct x empty++instance Covariant t => Extractable (Construction t) where+	extract (Construct x _) = x++instance Applicative t => Applicative (Construction t) where+	Construct f fs <*> Construct x xs = Construct (f x) $ fs <**> xs++instance Traversable t => Traversable (Construction t) where+	Construct x xs ->> f = Construct <$> f x <*> xs ->>> f++instance Alternative t => Bindable (Construction t) where+	Construct x xs >>= f = case f x of Construct y ys -> Construct y $ ys <+> (>>= f) <$> xs++instance Covariant t => Extendable (Construction t) where+	x =>> f = Construct (f x) $ extend f <$> deconstruct x++instance (Avoidable t, Alternative t) => Monad (Construction t) where++instance Covariant t => Comonad (Construction t) where++instance Lowerable Construction where+	lower (Construct _ xs) = extract <$> xs++instance (Setoid a, forall b . Setoid b => Setoid (t b)) => Setoid (Construction t a) where+	Construct x xs == Construct y ys = (x == y) * (xs == ys)++instance (Semigroup a, forall b . Semigroup b => Semigroup (t b)) => Semigroup (Construction t a) where+	Construct x xs + Construct y ys = Construct (x + y) $ xs + ys++instance (Monoid a, forall b . Semigroup b => Monoid (t b)) => Monoid (Construction t a) where+	zero = Construct zero zero++deconstruct :: Construction t a -> (t :. Construction t) a+deconstruct (Construct _ xs) = xs++coiterate :: Covariant t => a |-> t -> a |-> Construction t+coiterate coalgebra x = Construct x $ coiterate coalgebra <$> coalgebra x++section :: Comonad t => t ~> Construction t+section as = Construct (extract as) $ extend section as++instance (Covariant t, Covariant u) => Covariant (TU Covariant Covariant u (Construction t)) where+	f <$> TU g = TU $ f <$$> g++instance (Avoidable t, Pointable u) => Pointable (TU Covariant Covariant u (Construction t)) where+	point x = TU . point . Construct x $ empty++instance (Applicative t, Applicative u) => Applicative (TU Covariant Covariant u (Construction t)) where+	TU f <*> TU x = TU $ f <**> x++instance (Covariant t, Alternative u) => Alternative (TU Covariant Covariant u (Construction t)) where+	TU x <+> TU y = TU $ x <+> y++instance (Covariant t, Avoidable u) => Avoidable (TU Covariant Covariant u (Construction t)) where+	empty = TU empty++instance (Traversable t, Traversable u) => Traversable (TU Covariant Covariant u (Construction t)) where+	TU g ->> f = TU <$> g ->>> f
+ Pandora/Paradigm/Primary/Transformer/Continuation.hs view
@@ -0,0 +1,43 @@+module Pandora.Paradigm.Primary.Transformer.Continuation (Continuation (..), cwcc, reset, shift) where++import Pandora.Core.Functor (type (:.), type (:=), type (::|:.))+import Pandora.Core.Morphism ((!), (%))+import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))+import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))+import Pandora.Pattern.Functor.Monad (Monad)+import Pandora.Pattern.Transformer.Liftable (Liftable (lift))+import Pandora.Pattern.Functor.Divariant (($))++newtype Continuation r t a = Continuation { continue :: (->) ::|:. a :. t := r }++instance Covariant t => Covariant (Continuation r t) where+	f <$> Continuation continuation = Continuation $ continuation . (. f)++instance Covariant t => Pointable (Continuation r t) where+	point x = Continuation ($ x)++instance Covariant t => Applicative (Continuation r t) where+	f <*> x = Continuation $ \h -> continue f $ \g -> continue x (h . g)++instance Covariant t => Bindable (Continuation r t) where+	x >>= f = Continuation $ \g -> continue x $ \y -> continue (f y) g++instance Monad t => Monad (Continuation r t) where++instance (forall u . Bindable u) => Liftable (Continuation r) where+	lift = Continuation . (>>=)++-- | Call with current continuation+cwcc :: ((a -> Continuation r t b) -> Continuation r t a) -> Continuation r t a+cwcc f = Continuation $ \g -> continue % g . f $ Continuation . (!) . g++-- | Delimit the continuation of any 'shift'+reset :: (forall u . Bindable u, Bindable t, Pointable t) => Continuation r t r -> Continuation s t r+reset = lift . continue % point++-- | Capture the continuation up to the nearest enclosing 'reset' and pass it+shift :: Pointable t => ((a -> t r) -> Continuation r t r) -> Continuation r t a+shift f = Continuation $ continue % point . f
+ Pandora/Paradigm/Primary/Transformer/Instruction.hs view
@@ -0,0 +1,45 @@+module Pandora.Paradigm.Primary.Transformer.Instruction (Instruction (..)) where++import Pandora.Core.Functor (type (:.), type (:=))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), (<$$>)))+import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>), (->>>)))+import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))+import Pandora.Pattern.Transformer.Liftable (Liftable (lift))+import Pandora.Pattern.Functor.Divariant (($))++data Instruction t a = Enter a | Instruct (t :. Instruction t := a)++instance Covariant t => Covariant (Instruction t) where+	f <$> Enter x = Enter $ f x+	f <$> Instruct xs = Instruct $ f <$$> xs++instance Covariant t => Pointable (Instruction t) where+	point = Enter++instance Alternative t => Alternative (Instruction t) where+	Enter x <+> _ = Enter x+	_ <+> Enter y = Enter y+	Instruct xs <+> Instruct ys = Instruct $ xs <+> ys++instance Avoidable t => Avoidable (Instruction t) where+	empty = Instruct empty++instance Covariant t => Applicative (Instruction t) where+	Enter f <*> Enter y = Enter $ f y+	Enter f <*> Instruct y = Instruct $ f <$$> y+	Instruct f <*> y = Instruct $ (<*> y) <$> f++instance Covariant t => Bindable (Instruction t) where+	Enter x >>= f = f x+	Instruct xs >>= f = Instruct $ (>>= f) <$> xs++instance Traversable t => Traversable (Instruction t) where+	Enter x ->> f = Enter <$> f x+	Instruct xs ->> f = Instruct <$> xs ->>> f++instance Liftable Instruction where+	lift x = Instruct $ Enter <$> x
+ Pandora/Paradigm/Primary/Transformer/Jack.hs view
@@ -0,0 +1,67 @@+module Pandora.Paradigm.Primary.Transformer.Jack (Jack (..), jack) where++import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)), comap)+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Extractable (Extractable (extract))+import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))+import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>), traverse))+import Pandora.Pattern.Functor.Distributive (Distributive ((>>-), distribute))+import Pandora.Pattern.Transformer.Liftable (Liftable (lift))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Object.Setoid (Setoid ((==)), Boolean (False))+import Pandora.Pattern.Object.Chain (Chain ((<=>)), Ordering (Less, Greater))++data Jack t a = It a | Other (t a)++instance Covariant t => Covariant (Jack t) where+	f <$> It x = It $ f x+	f <$> Other y = Other $ f <$> y++instance Covariant t => Pointable (Jack t) where+	point = It++instance Alternative t => Alternative (Jack t) where+	It x <+> _ = It x+	Other _ <+> It y = It y+	Other x <+> Other y = Other (x <+> y)++instance Avoidable t => Avoidable (Jack t) where+	empty = Other empty++instance Extractable t => Extractable (Jack t) where+	extract (It x) = x+	extract (Other y) = extract y++instance Applicative t => Applicative (Jack t) where+	It f <*> It x = It $ f x+	It f <*> Other y = Other $ f <$> y+	Other f <*> It x = Other $ ($ x) <$> f+	Other f <*> Other y = Other $ f <*> y++instance Traversable t => Traversable (Jack t) where+	It x ->> f = It <$> f x+	Other y ->> f = comap Other . traverse f $ y++instance Distributive t => Distributive (Jack t) where+	x >>- f = distribute $ f <$> x++instance Liftable Jack where+	lift = Other++instance (Setoid a, Setoid (t a)) => Setoid (Jack t a) where+	It x == It y = x == y+	Other x == Other y = x == y+	_ == _ = False++instance (Chain a, Chain (t a)) => Chain (Jack t a) where+	It _ <=> Other _ = Less+	Other _ <=> It _ = Greater+	It x <=> It y = x <=> y+	Other x <=> Other y = x <=> y++jack :: (a -> r) -> (t a -> r) -> Jack t a -> r+jack f _ (It x) = f x+jack _ g (Other y) = g y
+ Pandora/Paradigm/Primary/Transformer/Jet.hs view
@@ -0,0 +1,22 @@+module Pandora.Paradigm.Primary.Transformer.Jet (Jet (..)) where++import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)), (<$$>))+import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Extractable (Extractable (extract))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>), (->>>)))++data Jet t a = Jet a (Jet t (t a))++instance Covariant t => Covariant (Jet t) where+	f <$> Jet a as = Jet (f a) (f <$$> as)++instance Traversable t => Traversable (Jet t) where+	Jet a as ->> f = Jet <$> f a <*> as ->>> f++instance (forall u . Avoidable u) => Pointable (Jet t) where+	point x = Jet x empty++instance Covariant t => Extractable (Jet t) where+	extract (Jet x _) = x
+ Pandora/Paradigm/Primary/Transformer/Kan.hs view
@@ -0,0 +1,28 @@+module Pandora.Paradigm.Primary.Transformer.Kan (Kan (..)) where++import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Contravariant (Contravariant ((>$<)))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))+import Pandora.Paradigm.Primary.Functor.Wye (Wye (Left, Right))++data family Kan (v :: * -> k) (t :: * -> *) (u :: * -> *) b a++data instance Kan Left t u b a = Lan ((t b -> a) -> u b)++instance Contravariant (Kan Left t u b) where+	f >$< Lan x = Lan $ x . (f .)++instance Interpreted (Kan Left t u b) where+	type Primary (Kan Left t u b) a = (t b -> a) -> u b+	run (Lan x) = x++data instance Kan Right t u b a = Ran ((a -> t b) -> u b)++instance Covariant (Kan Right t u b) where+	f <$> Ran x = Ran $ x . (. f)++instance Interpreted (Kan Right t u b) where+	type Primary (Kan Right t u b) a = (a -> t b) -> u b+	run (Ran x) = x
+ Pandora/Paradigm/Primary/Transformer/Reverse.hs view
@@ -0,0 +1,52 @@+module Pandora.Paradigm.Primary.Transformer.Reverse (Reverse (..)) where++import Pandora.Pattern.Category ((.))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Contravariant (Contravariant ((>$<)))+import Pandora.Pattern.Functor.Extractable (Extractable (extract))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))+import Pandora.Pattern.Functor.Traversable (Traversable ((->>)))+import Pandora.Pattern.Functor.Distributive (Distributive ((>>-)))+import Pandora.Pattern.Functor.Divariant (($))+import Pandora.Pattern.Transformer.Liftable (Liftable (lift))+import Pandora.Pattern.Transformer.Lowerable (Lowerable (lower))+import Pandora.Pattern.Transformer.Hoistable (Hoistable (hoist))+import Pandora.Paradigm.Primary.Transformer.Backwards (Backwards (Backwards))+import Pandora.Paradigm.Controlflow.Joint.Interpreted (Interpreted (Primary, run))++newtype Reverse t a = Reverse (t a)++instance Covariant t => Covariant (Reverse t) where+	f <$> Reverse x = Reverse $ f <$> x++instance Pointable t => Pointable (Reverse t) where+	point = Reverse . point++instance Extractable t => Extractable (Reverse t) where+	extract (Reverse x) = extract x++instance Applicative t => Applicative (Reverse t) where+	Reverse f <*> Reverse x = Reverse (f <*> x)++instance Traversable t => Traversable (Reverse t) where+	Reverse x ->> f = Reverse <$> run (x ->> Backwards . f)++instance Distributive t => Distributive (Reverse t) where+	x >>- f = Reverse $ x >>- run . f++instance Contravariant t => Contravariant (Reverse t) where+	f >$< Reverse x = Reverse $ f >$< x++instance Interpreted (Reverse t) where+	type Primary (Reverse t) a = t a+	run (Reverse x) = x++instance Liftable Reverse where+	lift = Reverse++instance Lowerable Reverse where+	lower = run++instance Hoistable Reverse where+	hoist f (Reverse x) = Reverse $ f x
+ Pandora/Paradigm/Primary/Transformer/Yoneda.hs view
@@ -0,0 +1,41 @@+module Pandora.Paradigm.Primary.Transformer.Yoneda (Yoneda (..)) where++import Pandora.Core.Morphism ((!))+import Pandora.Pattern.Category (identity, (.))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))+import Pandora.Pattern.Functor.Applicative (Applicative ((<*>)))+import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))+import Pandora.Pattern.Functor.Pointable (Pointable (point))+import Pandora.Pattern.Functor.Extractable (Extractable (extract))+import Pandora.Pattern.Functor.Adjoint (Adjoint ((-|), (|-)))+import Pandora.Pattern.Transformer.Liftable (Liftable (lift))+import Pandora.Pattern.Functor.Divariant (($))++newtype Yoneda t a = Yoneda+	{ yoneda :: forall b . (a -> b) -> t b }++instance Covariant (Yoneda t) where+	f <$> x = Yoneda (\k -> yoneda x (k . f))++instance Alternative t => Alternative (Yoneda t) where+	Yoneda f <+> Yoneda g = Yoneda (\k -> f k <+> g k)++instance Applicative t => Applicative (Yoneda t) where+	Yoneda f <*> Yoneda x = Yoneda (\g -> f (g .) <*> x identity)++instance Avoidable t => Avoidable (Yoneda t) where+	empty = Yoneda (empty !)++instance Pointable t => Pointable (Yoneda t) where+	point x = Yoneda (\f -> point $ f x)++instance Extractable t => Extractable (Yoneda t) where+	extract (Yoneda f) = extract $ f identity++instance Liftable Yoneda where+	lift x = Yoneda (\f -> f <$> x)++instance (Extractable t, Pointable t, Extractable u, Pointable u) => Adjoint (Yoneda t) (Yoneda u) where+	x -| f = point . f . point $ x+	x |- g = extract . extract $ g <$> x
Pandora/Paradigm/Structure.hs view
@@ -2,6 +2,6 @@  import Pandora.Paradigm.Structure.Variation.Substructure as Exports import Pandora.Paradigm.Structure.Variation.Nonempty as Exports+import Pandora.Paradigm.Structure.Rose as Exports import Pandora.Paradigm.Structure.Binary as Exports-import Pandora.Paradigm.Structure.Graph as Exports import Pandora.Paradigm.Structure.Stack as Exports
Pandora/Paradigm/Structure/Binary.hs view
@@ -4,83 +4,72 @@  import Pandora.Core.Morphism ((&), (%), (!)) import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), (<$$>)))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>), (->>>)))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>))) import Pandora.Pattern.Functor.Extractable (extract) import Pandora.Pattern.Functor.Divariant (($)) import Pandora.Pattern.Object.Chain (Chain ((<=>)), order)-import Pandora.Paradigm.Basis.Maybe (Maybe (Just, Nothing), maybe)-import Pandora.Paradigm.Basis.Product (Product ((:*:)))-import Pandora.Paradigm.Basis.Wye (Wye (End, Left, Right, Both))-import Pandora.Paradigm.Basis.Twister (Twister (Twister))-import Pandora.Paradigm.Basis.Tagged (Tagged (Tag), type (:#))-import Pandora.Paradigm.Controlflow.Joint.Schemes.UT (UT (UT))+import Pandora.Paradigm.Primary.Functor.Maybe (Maybe (Just, Nothing), maybe)+import Pandora.Paradigm.Primary.Functor.Product (Product ((:*:)))+import Pandora.Paradigm.Primary.Functor.Wye (Wye (End, Left, Right, Both))+import Pandora.Paradigm.Primary.Functor.Tagged (Tagged (Tag))+import Pandora.Paradigm.Primary.Transformer.Construction (Construction (Construct))+import Pandora.Paradigm.Controlflow.Joint.Schemes.TU (TU (TU)) import Pandora.Paradigm.Controlflow.Joint.Interpreted (run) import Pandora.Paradigm.Inventory.Store (Store (Store)) import Pandora.Paradigm.Inventory.Optics ((%~)) import Pandora.Paradigm.Structure.Variation.Nonempty (Nonempty) import Pandora.Paradigm.Structure.Variation.Substructure (Substructure (Output, sub)) -type Binary = UT Covariant Covariant (Twister Wye) Maybe--instance Covariant Binary where-	f <$> UT g = UT $ f <$$> g--instance Pointable Binary where-	point x = UT . Just . Twister x $ End--instance Traversable Binary where-	UT g ->> f = UT <$> g ->>> f+type Binary = TU Covariant Covariant Maybe (Construction Wye)  insert :: Chain a => a -> Binary a -> Binary a-insert x (UT Nothing) = point x-insert x tree@(UT (Just (Twister y _))) = x <=> y & order-	(sub @'Left %~ (insert x <$>) $ tree) tree-	(sub @'Right %~ (insert x <$>) $ tree)+insert x (TU Nothing) = TU . Just . Construct x $ End+insert x tree@(TU (Just (Construct y _))) = x <=> y & order+	(sub @Left %~ (insert x <$>) $ tree) tree+	(sub @Right %~ (insert x <$>) $ tree) -instance Substructure 'Left Binary where-	type Output 'Left Binary a = 'Left :# Binary a-	sub (UT Nothing) = Store $ (:*:) (Tag $ UT Nothing) $ (UT Nothing !)-	sub  t@(UT (Just (Twister x End))) = Store $ (:*:) (Tag $ UT Nothing) $-		maybe t (UT . Just . Twister x . Left) . run . extract-	sub (UT (Just (Twister x (Left lst)))) = Store $ (:*:) (Tag . UT . Just $ lst) $-		maybe (point x) (UT . Just . Twister x . Left) . run . extract-	sub t@(UT (Just (Twister x (Right rst)))) = Store $ (:*:) (Tag $ UT Nothing) $-		maybe t (UT . Just . Twister x . Both % rst) . run . extract-	sub  (UT (Just (Twister x (Both lst rst)))) = Store $ (:*:) (Tag . UT . Just $ lst) $-		maybe (UT (Just (Twister x (Right rst)))) (UT . Just . Twister x . Both % rst) . run . extract+instance Substructure Left Binary where+	type Output Left Binary a = Binary a+	sub (TU Nothing) = Store $ (:*:) (Tag $ TU Nothing) $ (TU Nothing !)+	sub t@(TU (Just (Construct x End))) = Store $ (:*:) (Tag $ TU Nothing) $+		maybe t (TU . Just . Construct x . Left) . run . extract+	sub (TU (Just (Construct x (Left lst)))) = Store $ (:*:) (Tag . TU . Just $ lst) $+		maybe (TU . Just . Construct x $ End) (TU . Just . Construct x . Left) . run . extract+	sub t@(TU (Just (Construct x (Right rst)))) = Store $ (:*:) (Tag $ TU Nothing) $+		maybe t (TU . Just . Construct x . Both % rst) . run . extract+	sub (TU (Just (Construct x (Both lst rst)))) = Store $ (:*:) (Tag . TU . Just $ lst) $+		maybe (TU (Just (Construct x (Right rst)))) (TU . Just . Construct x . Both % rst) . run . extract -instance Substructure 'Right Binary where-	type Output 'Right Binary a = 'Right :# Binary a-	sub (UT Nothing) = Store $ Tag (UT Nothing) :*: (!) (UT Nothing)-	sub t@(UT (Just (Twister x End))) = Store $ (:*:) (Tag $ UT Nothing) $-		maybe t (UT . Just . Twister x . Right) . run . extract-	sub t@(UT (Just (Twister x (Left lst)))) = Store $ (:*:) (Tag $ UT Nothing) $-		maybe t (UT . Just . Twister x . Both lst) . run . extract-	sub (UT (Just (Twister x (Right rst)))) = Store $ (:*:) (Tag . UT . Just $ rst) $-		maybe (point x) (UT . Just . Twister x . Right) . run . extract-	sub (UT (Just (Twister x (Both lst rst)))) = Store $ (:*:) (Tag . UT . Just $ rst) $-		maybe (UT (Just (Twister x (Left lst)))) (UT . Just . Twister x . Both lst) . run . extract+instance Substructure Right Binary where+	type Output Right Binary a = Binary a+	sub (TU Nothing) = Store $ Tag (TU Nothing) :*: (!) (TU Nothing)+	sub t@(TU (Just (Construct x End))) = Store $ (:*:) (Tag $ TU Nothing) $+		maybe t (TU . Just . Construct x . Right) . run . extract+	sub t@(TU (Just (Construct x (Left lst)))) = Store $ (:*:) (Tag $ TU Nothing) $+		maybe t (TU . Just . Construct x . Both lst) . run . extract+	sub (TU (Just (Construct x (Right rst)))) = Store $ (:*:) (Tag . TU . Just $ rst) $+		maybe (TU . Just . Construct x $ End) (TU . Just . Construct x . Right) . run . extract+	sub (TU (Just (Construct x (Both lst rst)))) = Store $ (:*:) (Tag . TU . Just $ rst) $+		maybe (TU (Just (Construct x (Left lst)))) (TU . Just . Construct x . Both lst) . run . extract -type instance Nonempty Binary = Twister Wye+type instance Nonempty Binary = Construction Wye -instance Substructure 'Left (Twister Wye) where-	type Output 'Left (Twister Wye) a = Maybe ('Left :# Twister Wye a)-	sub (Twister x End) = Store $ (:*:) Nothing $ (Twister x End !)-	sub (Twister x (Left lst)) = Store $ (:*:) (Just . Tag $ lst) $-		maybe (Twister x End) (Twister x . Left . extract)-	sub tree@(Twister x (Right rst)) = Store $ (:*:) Nothing $-		maybe tree (Twister x . Both % rst . extract)-	sub (Twister x (Both lst rst)) = Store $ (:*:) (Just . Tag $ lst) $-		maybe (Twister x $ Right rst) (Twister x . Both % rst . extract)+instance Substructure Left (Construction Wye) where+	type Output Left (Construction Wye) a = Maybe (Construction Wye a)+	sub (Construct x End) = Store $ Tag Nothing :*: (Construct x End !)+	sub (Construct x (Left lst)) = Store $ (:*:) (Tag . Just $ lst) $+		maybe (Construct x End) (Construct x . Left) . extract+	sub tree@(Construct x (Right rst)) = Store $ (:*:) (Tag Nothing) $+		maybe tree (Construct x . Both % rst) . extract+	sub (Construct x (Both lst rst)) = Store $ (:*:) (Tag . Just $ lst) $+		maybe (Construct x $ Right rst) (Construct x . Both % rst) . extract -instance Substructure 'Right (Twister Wye) where-	type Output 'Right (Twister Wye) a = Maybe ('Right :# Twister Wye a)-	sub (Twister x End) = Store $ (:*:) Nothing $ (Twister x End !)-	sub tree@(Twister x (Left lst)) = Store $ (:*:) Nothing $-		maybe tree (Twister x . Both lst . extract)-	sub (Twister x (Right rst)) = Store $ (:*:) (Just . Tag $ rst) $-		maybe (Twister x End) (Twister x . Right . extract)-	sub (Twister x (Both lst rst)) = Store $ (:*:) (Just . Tag $ rst) $-		maybe (Twister x $ Left lst) (Twister x . Both lst . extract)+instance Substructure Right (Construction Wye) where+	type Output Right (Construction Wye) a = Maybe (Construction Wye a)+	sub (Construct x End) = Store $ Tag Nothing :*: (Construct x End !)+	sub tree@(Construct x (Left lst)) = Store $ (:*:) (Tag Nothing) $+		maybe tree (Construct x . Both lst) . extract+	sub (Construct x (Right rst)) = Store $ (:*:) (Tag . Just $ rst) $+		maybe (Construct x End) (Construct x . Right) . extract+	sub (Construct x (Both lst rst)) = Store $ (:*:) (Tag . Just $ rst) $+		maybe (Construct x $ Left lst) (Construct x . Both lst) . extract
− Pandora/Paradigm/Structure/Graph.hs
@@ -1,29 +0,0 @@-{-# OPTIONS_GHC -fno-warn-orphans #-}--module Pandora.Paradigm.Structure.Graph (Graph, loose) where--import Pandora.Core.Functor (type (~>))-import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), (<$$>)))-import Pandora.Pattern.Functor.Divariant (($))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>), (->>>)))-import Pandora.Paradigm.Basis.Edges (Edges (Empty, Overlay))-import Pandora.Paradigm.Basis.Twister (Twister (Twister))-import Pandora.Paradigm.Controlflow.Joint.Schemes.UT (UT (UT))-import Pandora.Paradigm.Inventory.State (fold)-import Pandora.Paradigm.Structure.Variation.Nonempty (Nonempty)---- | Directed acyclic graph structure-type Graph = UT Covariant Covariant (Twister Edges) Edges--type instance Nonempty Graph = Twister Edges--instance Covariant Graph where-	f <$> UT g = UT $ f <$$> g--instance Traversable Graph where-	UT g ->> f = UT <$> g ->>> f---- | Transform any traversable structure into all loose edges graph-loose :: Traversable t => t ~> Graph-loose = UT . fold Empty (\x -> Overlay . Twister x)
+ Pandora/Paradigm/Structure/Rose.hs view
@@ -0,0 +1,9 @@+module Pandora.Paradigm.Structure.Rose (Rose) where++import Pandora.Pattern.Functor.Covariant (Covariant)+import Pandora.Paradigm.Primary.Functor.Maybe (Maybe)+import Pandora.Paradigm.Primary.Transformer.Construction (Construction)+import Pandora.Paradigm.Structure.Stack (Stack)+import Pandora.Paradigm.Controlflow.Joint.Schemes.TU (TU)++type Rose = TU Covariant Covariant Maybe (Construction Stack)
Pandora/Paradigm/Structure/Stack.hs view
@@ -5,62 +5,43 @@ import Pandora.Core.Functor (type (~>)) import Pandora.Core.Morphism ((&)) import Pandora.Pattern.Category ((.))-import Pandora.Pattern.Functor.Covariant (Covariant ((<$>), (<$$>)))-import Pandora.Pattern.Functor.Alternative (Alternative ((<+>)))-import Pandora.Pattern.Functor.Avoidable (Avoidable (empty))-import Pandora.Pattern.Functor.Applicative (Applicative ((<*>), (<**>)))-import Pandora.Pattern.Functor.Pointable (Pointable (point))-import Pandora.Pattern.Functor.Extractable (Extractable (extract))-import Pandora.Pattern.Functor.Traversable (Traversable ((->>), (->>>)))-import Pandora.Pattern.Functor.Bindable (Bindable ((>>=)))+import Pandora.Pattern.Functor.Covariant (Covariant ((<$>)))+import Pandora.Pattern.Functor.Alternative ((<+>))+import Pandora.Pattern.Functor.Avoidable (empty)+import Pandora.Pattern.Functor.Pointable (point)+import Pandora.Pattern.Functor.Extractable (extract)+import Pandora.Pattern.Functor.Traversable (Traversable)+import Pandora.Pattern.Functor.Bindable ((>>=)) import Pandora.Pattern.Functor.Divariant (($)) import Pandora.Pattern.Object.Setoid (Setoid ((==)), (?)) import Pandora.Pattern.Object.Semigroup (Semigroup ((+))) import Pandora.Pattern.Object.Monoid (Monoid (zero))-import Pandora.Paradigm.Basis.Maybe (Maybe (Just, Nothing))-import Pandora.Paradigm.Basis.Predicate (Predicate (Predicate))-import Pandora.Paradigm.Basis.Product (Product ((:*:)))-import Pandora.Paradigm.Basis.Twister (Twister (Twister), untwist)+import Pandora.Paradigm.Primary.Functor.Maybe (Maybe (Just, Nothing))+import Pandora.Paradigm.Primary.Functor.Predicate (Predicate (Predicate))+import Pandora.Paradigm.Primary.Functor.Product (Product ((:*:)))+import Pandora.Paradigm.Primary.Transformer.Construction (Construction (Construct), deconstruct) import Pandora.Paradigm.Inventory.State (fold) import Pandora.Paradigm.Inventory.Store (Store (Store)) import Pandora.Paradigm.Inventory.Optics (type (:-.)) import Pandora.Paradigm.Controlflow.Joint.Interpreted (run)-import Pandora.Paradigm.Controlflow.Joint.Schemes.UT (UT (UT))+import Pandora.Paradigm.Controlflow.Joint.Schemes.TU (TU (TU)) import Pandora.Paradigm.Structure.Variation.Nonempty (Nonempty)  -- | Linear data structure that serves as a collection of elements-type Stack = UT Covariant Covariant (Twister Maybe) Maybe--type instance Nonempty Stack = Twister Maybe--instance Covariant Stack where-	f <$> UT stack = UT $ f <$$> stack--instance Pointable Stack where-	point = UT . Just . point--instance Alternative Stack where-	UT x <+> UT y = UT $ x <+> y--instance Avoidable Stack where-	empty = UT Nothing--instance Applicative Stack where-	UT f <*> UT x = UT $ f <**> x+type Stack = TU Covariant Covariant Maybe (Construction Maybe) -instance Traversable Stack where-	UT stack ->> f = UT <$> stack ->>> f+type instance Nonempty Stack = Construction Maybe  instance Setoid a => Setoid (Stack a) where-	UT ls == UT rs = ls == rs+	TU ls == TU rs = ls == rs  instance Semigroup (Stack a) where-	UT Nothing + UT ys = UT ys-	UT (Just (Twister x xs)) + UT ys = UT . Just . Twister x . run-		$ UT @Covariant @Covariant xs + UT @Covariant @Covariant ys+	TU Nothing + TU ys = TU ys+	TU (Just (Construct x xs)) + TU ys = TU . Just . Construct x . run+		$ TU @Covariant @Covariant xs + TU @Covariant @Covariant ys  instance Monoid (Stack a) where-	zero = UT Nothing+	zero = TU Nothing  top :: Stack a :-. Maybe a top stack = Store $ (:*:) (extract <$> run stack) $ \case@@ -68,15 +49,15 @@     Nothing -> pop stack  push :: a -> Stack a -> Stack a-push x (UT stack) = UT $ (Twister x . Just <$> stack) <+> (point . point) x+push x (TU stack) = TU $ (Construct x . Just <$> stack) <+> (point . point) x  pop :: Stack ~> Stack-pop (UT stack) = UT $ stack >>= untwist+pop (TU stack) = TU $ stack >>= deconstruct  filter :: Predicate a -> Stack a -> Stack a-filter (Predicate p) = UT . fold empty-	(\now new -> p now ? Just (Twister now new) $ new)+filter (Predicate p) = TU . fold empty+	(\now new -> p now ? Just (Construct now new) $ new)  -- | Transform any traversable structure into a stack linearize :: Traversable t => t ~> Stack-linearize = UT . fold Nothing (\x -> Just . Twister x)+linearize = TU . fold Nothing (\x -> Just . Construct x)
Pandora/Paradigm/Structure/Stream.hs view
@@ -1,6 +1,6 @@ module Pandora.Paradigm.Structure.Stream (Stream) where -import Pandora.Paradigm.Basis.Identity (Identity)-import Pandora.Paradigm.Basis.Twister (Twister)+import Pandora.Paradigm.Primary.Functor.Identity (Identity)+import Pandora.Paradigm.Primary.Transformer.Construction (Construction) -type Stream = Twister Identity+type Stream = Construction Identity
Pandora/Paradigm/Structure/Variation/Substructure.hs view
@@ -1,7 +1,8 @@ module Pandora.Paradigm.Structure.Variation.Substructure (Substructure (..)) where  import Pandora.Paradigm.Inventory.Optics (type (:-.))+import Pandora.Paradigm.Primary.Functor.Tagged (Tagged)  class Substructure f t where-	type Output (f :: * -> k) (t :: * -> *) a = r | r -> f t a-	sub :: t a :-. Output f t a+	type Output (f :: * -> k) (t :: * -> *) a+	sub :: t a :-. Tagged f (Output f t a)
Pandora/Pattern/Object.hs view
@@ -2,6 +2,7 @@  import Pandora.Pattern.Object.Lattice as Exports import Pandora.Pattern.Object.Semilattice as Exports+import Pandora.Pattern.Object.Ring as Exports import Pandora.Pattern.Object.Group as Exports import Pandora.Pattern.Object.Monoid as Exports import Pandora.Pattern.Object.Quasiring as Exports
+ Pandora/Pattern/Object/Ring.hs view
@@ -0,0 +1,10 @@+module Pandora.Pattern.Object.Ring (Ring) where++import Pandora.Pattern.Object.Group (Group)++{- |+> When providing a new instance, you should ensure it satisfies the one law:+> * Commutativity of addition: x + y ≡ y + x+-}++class Group a => Ring a where
pandora.cabal view
@@ -1,5 +1,5 @@ name:                pandora-version:             0.2.6+version:             0.2.7 synopsis:            A box of patterns and paradigms description:         Humble attempt to define a library for problem solving based on math abstractions. homepage:            https://github.com/iokasimov/pandora@@ -26,29 +26,32 @@      Pandora.Paradigm     -- Basic constructions-    Pandora.Paradigm.Basis-    Pandora.Paradigm.Basis.Backwards-    Pandora.Paradigm.Basis.Conclusion-    Pandora.Paradigm.Basis.Constant-    Pandora.Paradigm.Basis.Continuation-    Pandora.Paradigm.Basis.Edges-    Pandora.Paradigm.Basis.Endo-    Pandora.Paradigm.Basis.Fix-    Pandora.Paradigm.Basis.Free-    Pandora.Paradigm.Basis.Identity-    Pandora.Paradigm.Basis.Jack-    Pandora.Paradigm.Basis.Jet-    Pandora.Paradigm.Basis.Kan-    Pandora.Paradigm.Basis.Maybe-    Pandora.Paradigm.Basis.Predicate-    Pandora.Paradigm.Basis.Product-    Pandora.Paradigm.Basis.Proxy-    Pandora.Paradigm.Basis.Tagged-    Pandora.Paradigm.Basis.Twister-    Pandora.Paradigm.Basis.Validation-    Pandora.Paradigm.Basis.Variation-    Pandora.Paradigm.Basis.Wye-    Pandora.Paradigm.Basis.Yoneda+    Pandora.Paradigm.Primary+    Pandora.Paradigm.Primary.Functor+    Pandora.Paradigm.Primary.Functor.Conclusion+    Pandora.Paradigm.Primary.Functor.Constant+    Pandora.Paradigm.Primary.Functor.Edges+    Pandora.Paradigm.Primary.Functor.Endo+    Pandora.Paradigm.Primary.Functor.Fix+    Pandora.Paradigm.Primary.Functor.Identity+    Pandora.Paradigm.Primary.Functor.Maybe+    Pandora.Paradigm.Primary.Functor.Predicate+    Pandora.Paradigm.Primary.Functor.Product+    Pandora.Paradigm.Primary.Functor.Proxy+    Pandora.Paradigm.Primary.Functor.Tagged+    Pandora.Paradigm.Primary.Functor.Validation+    Pandora.Paradigm.Primary.Functor.Variation+    Pandora.Paradigm.Primary.Functor.Wye+    Pandora.Paradigm.Primary.Transformer+    Pandora.Paradigm.Primary.Transformer.Backwards+    Pandora.Paradigm.Primary.Transformer.Reverse+    Pandora.Paradigm.Primary.Transformer.Continuation+    Pandora.Paradigm.Primary.Transformer.Construction+    Pandora.Paradigm.Primary.Transformer.Instruction+    Pandora.Paradigm.Primary.Transformer.Jack+    Pandora.Paradigm.Primary.Transformer.Jet+    Pandora.Paradigm.Primary.Transformer.Kan+    Pandora.Paradigm.Primary.Transformer.Yoneda     -- Control flow primitives     Pandora.Paradigm.Controlflow     -- Typeclassess about functor junctions@@ -80,8 +83,8 @@     Pandora.Paradigm.Structure     Pandora.Paradigm.Structure.Stream     Pandora.Paradigm.Structure.Stack-    Pandora.Paradigm.Structure.Graph     Pandora.Paradigm.Structure.Binary+    Pandora.Paradigm.Structure.Rose     Pandora.Paradigm.Structure.Variation.Nonempty     Pandora.Paradigm.Structure.Variation.Substructure @@ -116,6 +119,7 @@     Pandora.Pattern.Object.Lattice     Pandora.Pattern.Object.Monoid     Pandora.Pattern.Object.Quasiring+    Pandora.Pattern.Object.Ring     Pandora.Pattern.Object.Ringoid     Pandora.Pattern.Object.Semigroup     Pandora.Pattern.Object.Semilattice@@ -133,4 +137,4 @@     MultiParamTypeClasses, NoImplicitPrelude, PackageImports, PolyKinds, RankNTypes     ScopedTypeVariables, TypeApplications, TypeFamilies, TypeFamilyDependencies, TypeOperators   default-language: Haskell2010-  ghc-options: -Wall -fno-warn-tabs+  ghc-options: -Wall -fno-warn-tabs -fno-warn-unticked-promoted-constructors