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

Pandora.Paradigm.Primary

Documentation

type family Simplification (t :: * -> *) (a :: *) where ... Source #

Equations

Simplification Exactly a = a 
Simplification (TU _ _ t u) a = (t :. u) > a 
Simplification (UT _ _ t u) a = (u :. t) > a 
Simplification (TUT _ _ _ t t' u) a = (t :. (u :. t')) > a 
Simplification (T_U _ _ p t u) a = p (t a) (u a) 
Simplification t a = t a 

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

Orphan instances

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

Methods

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

Morphable ('Into (Flip Conclusion e) :: Morph (Type -> Type)) Maybe Source # 
Instance details

Associated Types

type Morphing ('Into (Flip Conclusion e)) Maybe :: Type -> Type Source #

Morphable ('Into (Conclusion e) :: Morph (Type -> Type)) Maybe Source # 
Instance details

Associated Types

type Morphing ('Into (Conclusion e)) Maybe :: Type -> Type Source #

Morphable ('Into ('Left Maybe)) Wye Source # 
Instance details

Associated Types

type Morphing ('Into ('Left Maybe)) Wye :: Type -> Type Source #

Morphable ('Into ('Right Maybe)) Wye Source # 
Instance details

Associated Types

type Morphing ('Into ('Right Maybe)) Wye :: Type -> Type Source #

Morphable ('Into Maybe) (Conclusion e) Source # 
Instance details

Associated Types

type Morphing ('Into Maybe) (Conclusion e) :: Type -> Type Source #

Morphable ('Into ('There Maybe :: Wedge e1 (Type -> Type)) :: Morph (Wedge e1 (Type -> Type))) (Wedge e2) Source # 
Instance details

Associated Types

type Morphing ('Into ('There Maybe)) (Wedge e2) :: Type -> Type Source #

Morphable ('Into ('This Maybe :: These e1 (Type -> Type)) :: Morph (These e1 (Type -> Type))) (These e2) Source # 
Instance details

Associated Types

type Morphing ('Into ('This Maybe)) (These e2) :: Type -> Type Source #

Morphable ('Into ('Here Maybe :: Wedge (Type -> Type) a1) :: Morph (Wedge (Type -> Type) a1)) (Flip Wedge a2) Source # 
Instance details

Associated Types

type Morphing ('Into ('Here Maybe)) (Flip Wedge a2) :: Type -> Type Source #

Morphable ('Into ('That Maybe :: These (Type -> Type) a1) :: Morph (These (Type -> Type) a1)) (Flip These a2) Source # 
Instance details

Associated Types

type Morphing ('Into ('That Maybe)) (Flip These a2) :: Type -> Type Source #

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

Associated Types

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

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

Associated Types

type Substance 'Right Wye :: Type -> Type Source #

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

Associated Types

type Substance 'Left Wye :: Type -> Type Source #

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

Methods

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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