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

Pandora.Paradigm.Schemes.TT

Documentation

newtype TT ct ct' t t' a Source #

Constructors

TT ((t :. t') > a) 

Instances

Instances details
Zippable List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Breadcrumbs List :: Type -> Type Source #

Stack List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Topping List :: Type -> Type Source #

type Popping List :: Type -> Type Source #

type Pushing List :: Type -> Type Source #

Methods

top :: Lens (Topping List) (List e) e Source #

pop :: State (Popping List e) (Maybe e) Source #

push :: e -> State (Pushing List e) e Source #

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

Defined in Pandora.Paradigm.Schemes.TT

Methods

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

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

Defined in Pandora.Paradigm.Schemes.TT

Methods

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

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

Defined in Pandora.Paradigm.Schemes.TT

Methods

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

(Semigroupoid m, Covariant m m t, Covariant (Betwixt m m) m t, Covariant m (Betwixt m m) t', Interpreted m (t <::> t')) => Covariant m m (t <::> t') Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TT

Methods

(<-|-) :: m a b -> m ((t <::> t') a) ((t <::> t') b) Source #

(<-|--) :: m a b -> m ((t <::> t') a) ((t <::> t') b) Source #

(<-|---) :: m a b -> m ((t <::> t') a) ((t <::> t') b) Source #

(<-|----) :: m a b -> m ((t <::> t') a) ((t <::> t') b) Source #

(<-|-----) :: m a b -> m ((t <::> t') a) ((t <::> t') b) Source #

(<-|------) :: m a b -> m ((t <::> t') a) ((t <::> t') b) Source #

(<-|-------) :: m a b -> m ((t <::> t') a) ((t <::> t') b) Source #

(<-|--------) :: m a b -> m ((t <::> t') a) ((t <::> t') b) Source #

(<-|-|-) :: (Covariant m (Betwixt m m) u, Covariant (Betwixt m m) m (t <::> t')) => m a b -> m ((t <::> t') (u a)) ((t <::> t') (u b)) Source #

(<-|-|--) :: (Covariant m (Betwixt m m) u, Covariant (Betwixt m m) m (t <::> t')) => m a b -> m ((t <::> t') (u a)) ((t <::> t') (u b)) Source #

(<-|-|---) :: (Covariant m (Betwixt m m) u, Covariant (Betwixt m m) m (t <::> t')) => m a b -> m ((t <::> t') (u a)) ((t <::> t') (u b)) Source #

(<-|-|----) :: (Covariant m (Betwixt m m) u, Covariant (Betwixt m m) m (t <::> t')) => m a b -> m ((t <::> t') (u a)) ((t <::> t') (u b)) Source #

(<-|-|-----) :: (Covariant m (Betwixt m m) u, Covariant (Betwixt m m) m (t <::> t')) => m a b -> m ((t <::> t') (u a)) ((t <::> t') (u b)) Source #

(<-|-|------) :: (Covariant m (Betwixt m m) u, Covariant (Betwixt m m) m (t <::> t')) => m a b -> m ((t <::> t') (u a)) ((t <::> t') (u b)) Source #

(<-|-|-------) :: (Covariant m (Betwixt m m) u, Covariant (Betwixt m m) m (t <::> t')) => m a b -> m ((t <::> t') (u a)) ((t <::> t') (u b)) Source #

(<-|-|-|-) :: (Covariant m (Betwixt m (Betwixt m m)) v, Covariant (Betwixt m (Betwixt m m)) (Betwixt (Betwixt m m) m) u, Covariant (Betwixt (Betwixt m m) m) m (t <::> t')) => m a b -> m ((t <::> t') (u (v a))) ((t <::> t') (u (v b))) Source #

Semigroup (List a) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Methods

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

Monoid (List a) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Methods

zero :: List a Source #

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

Defined in Pandora.Paradigm.Structure.Some.List

Methods

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

(!=) :: List a -> List a -> Boolean Source #

(?=) :: List a -> List a -> r -> r -> r Source #

Zippable (Construction List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

Associated Types

type Breadcrumbs (Construction List) :: Type -> Type Source #

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

Defined in Pandora.Paradigm.Schemes.TT

Methods

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

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

Defined in Pandora.Paradigm.Schemes.TT

Methods

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

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

Defined in Pandora.Paradigm.Schemes.TT

Methods

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

Morphable ('Delete ('All :: a -> Occurrence a) :: Morph (a -> Occurrence a)) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Delete 'All) List :: Type -> Type Source #

Morphable ('Delete ('First :: a -> Occurrence a) :: Morph (a -> Occurrence a)) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Delete 'First) List :: Type -> Type Source #

Morphable ('Find ('Element :: a -> Morph a) :: Morph (a -> Morph a)) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Find 'Element) List :: Type -> Type Source #

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

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Substance ('Right 'Branch) Binary :: Type -> Type Source #

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

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Substance ('Left 'Branch) Binary :: Type -> Type Source #

Morphable ('Into (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) :: Morph (Type -> Type)) (Construction List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

Associated Types

type Morphing ('Into (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses))))))) (Construction List) :: Type -> Type Source #

Morphable ('Into List) (Vector r) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

Associated Types

type Morphing ('Into List) (Vector r) :: Type -> Type Source #

Morphable ('Into List) (Construction Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into List) (Construction Maybe) :: Type -> Type Source #

Morphable ('Into List) (Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into List) (Tape List) :: Type -> Type Source #

Chain k => Morphable ('Lookup ('Key :: a -> Morph a) :: Morph (a -> Morph a)) (Prefixed Binary k) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

type Morphing ('Lookup 'Key) (Prefixed Binary k) :: Type -> Type Source #

Setoid key => Morphable ('Lookup ('Key :: a -> Morph a) :: Morph (a -> Morph a)) (Prefixed List key) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Lookup 'Key) (Prefixed List key) :: Type -> Type Source #

Setoid k => Morphable ('Lookup ('Key :: a -> Morph a) :: Morph (a -> Morph a)) (Prefixed Rose k) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

Associated Types

type Morphing ('Lookup 'Key) (Prefixed Rose k) :: Type -> Type Source #

Morphable ('Into Binary) (Construction > (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

Associated Types

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

Morphable ('Into List) (Tape > Construction Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into List) (Tape > Construction Maybe) :: Type -> Type Source #

Morphable ('Into List) (Construction Maybe <::> Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

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

Morphable ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) ((Turnover :: (Type -> Type) -> Type -> Type) < Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Rotate 'Right) (Turnover < Tape List) :: Type -> Type Source #

Morphable ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) ((Turnover :: (Type -> Type) -> Type -> Type) < Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Rotate 'Left) (Turnover < Tape List) :: Type -> Type Source #

Morphable ('Rotate ('Up :: a -> Vertical a) :: Morph (a -> Vertical a)) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

Associated Types

type Morphing ('Rotate 'Up) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) :: Type -> Type Source #

Substructure ('Right ('Forest :: a -> Segment a) :: Wye (a -> Segment a)) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

Associated Types

type Substance ('Right 'Forest) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) :: Type -> Type Source #

Substructure ('Left ('Forest :: a -> Segment a) :: Wye (a -> Segment a)) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

Associated Types

type Substance ('Left 'Forest) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) :: Type -> Type Source #

Substructure ('Down ('Forest :: a -> Segment a) :: Vertical (a -> Segment a)) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

Associated Types

type Substance ('Down 'Forest) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) :: Type -> Type Source #

Substructure ('Up ('Forest :: a -> Segment a) :: Vertical (a -> Segment a)) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

Associated Types

type Substance ('Up 'Forest) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) :: Type -> Type Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal (-->) (:*:) (:*:) t) => Substructure ('All ('Right :: a -> Wye a) :: Occurrence (a -> Wye a)) (Tape t <::> Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Tape

Associated Types

type Substance ('All 'Right) (Tape t <::> Tape t) :: Type -> Type Source #

(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal (-->) (:*:) (:*:) t) => Substructure ('All ('Left :: a -> Wye a) :: Occurrence (a -> Wye a)) (Tape t <::> Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Tape

Associated Types

type Substance ('All 'Left) (Tape t <::> Tape t) :: Type -> Type Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Hoistable ((->) :: Type -> Type -> Type) (TT Covariant Covariant t :: (Type -> Type) -> Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TT

Methods

(/|\) :: Covariant (->) (->) u => (forall a. u a -> v a) -> forall (a :: k). TT Covariant Covariant t u a -> TT Covariant Covariant t v a Source #

Morphable (('Into :: (Type -> Type) -> Morph (Type -> Type)) > Tape List) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into > Tape List) List :: Type -> Type Source #

Morphable (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Right ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > 'Right 'Zig) Binary :: Type -> Type Source #

Morphable (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Left ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > 'Left 'Zig) Binary :: Type -> Type Source #

Morphable (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > ('Right > 'Zig 'Zag)) Binary :: Type -> Type Source #

Morphable (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > ('Left > 'Zig 'Zag)) Binary :: Type -> Type Source #

Morphable (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > ('Right > 'Zig 'Zig)) Binary :: Type -> Type Source #

Morphable (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

Associated Types

type Morphing ('Rotate > ('Left > 'Zig 'Zig)) Binary :: Type -> Type Source #

Morphable (('Into :: (Type -> Type) -> Morph (Type -> Type)) > Comprehension Maybe) (Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into > Comprehension Maybe) (Tape List) :: Type -> Type Source #

Morphable (('Into :: (Type -> Type) -> Morph (Type -> Type)) > Tape List) (Construction Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing ('Into > Tape List) (Construction Maybe) :: Type -> Type Source #

Morphable ('Pop :: a -> Morph a) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing 'Pop List :: Type -> Type Source #

Morphable ('Push :: a -> Morph a) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Morphing 'Push List :: Type -> Type Source #

Substructure ('Rest :: a -> Segment a) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Substance 'Rest List :: Type -> Type Source #

Substructure ('Root :: a -> Segment a) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Associated Types

type Substance 'Root List :: Type -> Type Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Substructure ('Down :: a -> Vertical a) (Tape t <::> Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Tape

Associated Types

type Substance 'Down (Tape t <::> Tape t) :: Type -> Type Source #

Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t => Substructure ('Up :: a -> Vertical a) (Tape t <::> Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Tape

Associated Types

type Substance 'Up (Tape t <::> Tape t) :: Type -> Type Source #

Traversable ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

Methods

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

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

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

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

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

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

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

(Traversable ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Traversable ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t') => Traversable ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) (t <::> t') Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TT

Methods

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

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

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

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

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

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

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

(Bindable ((->) :: Type -> Type -> Type) t, Distributive ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t', Bindable ((->) :: Type -> Type -> Type) t') => Bindable ((->) :: Type -> Type -> Type) (t <::> t') Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TT

Methods

(=<<) :: (a -> (t <::> t') b) -> (t <::> t') a -> (t <::> t') b Source #

(==<<) :: (a -> (t <::> t') b) -> (t <::> t') a -> (t <::> t') b Source #

(===<<) :: (a -> (t <::> t') b) -> (t <::> t') a -> (t <::> t') b Source #

(====<<) :: (a -> (t <::> t') b) -> (t <::> t') a -> (t <::> t') b Source #

(=====<<) :: (a -> (t <::> t') b) -> (t <::> t') a -> (t <::> t') b Source #

(======<<) :: (a -> (t <::> t') b) -> (t <::> t') a -> (t <::> t') b Source #

(=======<<) :: (a -> (t <::> t') b) -> (t <::> t') a -> (t <::> t') b Source #

Monoidal (-->) (-->) (:*:) (:*:) t => Liftable ((->) :: Type -> Type -> Type) (TT Covariant Covariant t :: (Type -> Type) -> Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TT

Methods

lift :: Covariant (->) (->) u => u a -> TT Covariant Covariant t u a Source #

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

Defined in Pandora.Paradigm.Schemes.TT

Methods

lower :: Covariant (->) (->) u => TT Covariant Covariant t u a -> u a Source #

Interpreted ((->) :: Type -> Type -> Type) (TT ct ct' t t') Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TT

Associated Types

type Primary (TT ct ct' t t') a Source #

Methods

run :: ((->) < TT ct ct' t t' a) < Primary (TT ct ct' t t') a Source #

unite :: ((->) < Primary (TT ct ct' t t') a) < TT ct ct' t t' a Source #

(<~~~~~~~~) :: ((->) < TT ct ct' t t' a) < Primary (TT ct ct' t t') a Source #

(<~~~~~~~) :: ((->) < TT ct ct' t t' a) < Primary (TT ct ct' t t') a Source #

(<~~~~~~) :: ((->) < TT ct ct' t t' a) < Primary (TT ct ct' t t') a Source #

(<~~~~~) :: ((->) < TT ct ct' t t' a) < Primary (TT ct ct' t t') a Source #

(<~~~~) :: ((->) < TT ct ct' t t' a) < Primary (TT ct ct' t t') a Source #

(<~~~) :: ((->) < TT ct ct' t t' a) < Primary (TT ct ct' t t') a Source #

(<~~) :: ((->) < TT ct ct' t t' a) < Primary (TT ct ct' t t') a Source #

(<~) :: ((->) < TT ct ct' t t' a) < Primary (TT ct ct' t t') a Source #

(=#-) :: (Semigroupoid (->), Interpreted (->) u) => (((->) < Primary (TT ct ct' t t') a) < Primary u b) -> ((->) < TT ct ct' t t' a) < u b Source #

(-#=) :: (Semigroupoid (->), Interpreted (->) u) => (((->) < TT ct ct' t t' a) < u b) -> ((->) < Primary (TT ct ct' t t') a) < Primary u b Source #

(<$=#-) :: (Semigroupoid (->), Covariant (->) (->) j, Interpreted (->) u) => (((->) < Primary (TT ct ct' t t') a) < Primary u b) -> (j > TT ct ct' t t' a) -> (j > u b) Source #

(-#=$>) :: (Covariant (->) (->) j, Interpreted (->) u) => (((->) < TT ct ct' t t' a) < u b) -> (j > Primary (TT ct ct' t t') a) -> (j > Primary u b) Source #

type Nonempty Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Nonempty List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Nonempty Rose Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

type Combinative List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Breadcrumbs List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Topping List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Popping List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Pushing List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Breadcrumbs (Construction List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

type Morphing ('Delete ('All :: a -> Occurrence a) :: Morph (a -> Occurrence a)) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Delete ('All :: a -> Occurrence a) :: Morph (a -> Occurrence a)) List = (Predicate <:.:> List) > ((->) :: Type -> Type -> Type)
type Morphing ('Delete ('First :: a -> Occurrence a) :: Morph (a -> Occurrence a)) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Delete ('First :: a -> Occurrence a) :: Morph (a -> Occurrence a)) List = (Predicate <:.:> List) > ((->) :: Type -> Type -> Type)
type Morphing ('Find ('Element :: a -> Morph a) :: Morph (a -> Morph a)) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Find ('Element :: a -> Morph a) :: Morph (a -> Morph a)) List = (Predicate <:.:> Maybe) > ((->) :: Type -> Type -> Type)
type Substance ('Right ('Branch :: a -> Segment a) :: Wye (a -> Segment a)) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Substance ('Right ('Branch :: a -> Segment a) :: Wye (a -> Segment a)) Binary = Binary
type Substance ('Left ('Branch :: a -> Segment a) :: Wye (a -> Segment a)) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Substance ('Left ('Branch :: a -> Segment a) :: Wye (a -> Segment a)) Binary = Binary
type Morphing ('Into (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) :: Morph (Type -> Type)) (Construction List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

type Morphing ('Into List) (Vector r) Source # 
Instance details

Defined in Pandora.Paradigm.Structure

type Morphing ('Into List) (Vector r) = List
type Morphing ('Into List) (Construction Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Into List) (Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Lookup ('Key :: a -> Morph a) :: Morph (a -> Morph a)) (Prefixed Binary k) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Morphing ('Lookup ('Key :: a -> Morph a) :: Morph (a -> Morph a)) (Prefixed Binary k) = ((->) k :: Type -> Type) <::> Maybe
type Morphing ('Lookup ('Key :: a -> Morph a) :: Morph (a -> Morph a)) (Prefixed List key) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Lookup ('Key :: a -> Morph a) :: Morph (a -> Morph a)) (Prefixed List key) = ((->) key :: Type -> Type) <::> Maybe
type Morphing ('Lookup ('Key :: a -> Morph a) :: Morph (a -> Morph a)) (Prefixed Rose k) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

type Morphing ('Lookup ('Key :: a -> Morph a) :: Morph (a -> Morph a)) (Prefixed Rose k) = ((->) (Nonempty List k) :: Type -> Type) <:.> Maybe
type Morphing ('Into Binary) (Construction > (Maybe <:*:> Maybe)) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Binary

type Morphing ('Into List) (Tape > Construction Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

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

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) ((Turnover :: (Type -> Type) -> Type -> Type) < Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Rotate ('Right :: a -> Wye a) :: Morph (a -> Wye a)) ((Turnover :: (Type -> Type) -> Type -> Type) < Tape List) = (Turnover :: (Type -> Type) -> Type -> Type) < Tape List
type Morphing ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) ((Turnover :: (Type -> Type) -> Type -> Type) < Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Rotate ('Left :: a -> Wye a) :: Morph (a -> Wye a)) ((Turnover :: (Type -> Type) -> Type -> Type) < Tape List) = (Turnover :: (Type -> Type) -> Type -> Type) < Tape List
type Morphing ('Rotate ('Up :: a -> Vertical a) :: Morph (a -> Vertical a)) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

type Substance ('Right ('Forest :: a -> Segment a) :: Wye (a -> Segment a)) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

type Substance ('Left ('Forest :: a -> Segment a) :: Wye (a -> Segment a)) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

type Substance ('Down ('Forest :: a -> Segment a) :: Vertical (a -> Segment a)) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

type Substance ('Up ('Forest :: a -> Segment a) :: Vertical (a -> Segment a)) (Tagged (Zippable structure) <:.> (Exactly <:*:> (Roses <:*:> (Reverse Roses <:*:> (Roses <:*:> (List <::> Tape Roses)))))) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Rose

type Substance ('All ('Right :: a -> Wye a) :: Occurrence (a -> Wye a)) (Tape t <::> Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Tape

type Substance ('All ('Right :: a -> Wye a) :: Occurrence (a -> Wye a)) (Tape t <::> Tape t) = Tape t <::> t
type Substance ('All ('Left :: a -> Wye a) :: Occurrence (a -> Wye a)) (Tape t <::> Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Tape

type Substance ('All ('Left :: a -> Wye a) :: Occurrence (a -> Wye a)) (Tape t <::> Tape t) = Tape t <::> Reverse t
type Morphing (('Into :: (Type -> Type) -> Morph (Type -> Type)) > Tape List) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing (('Into :: (Type -> Type) -> Morph (Type -> Type)) > Tape List) List = Maybe <::> Tape List
type Morphing (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Right ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Right ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) Binary = Binary
type Morphing (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Left ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (a -> Splay a) -> Morph (Wye (a -> Splay a))) > 'Left ('Zig :: a -> Splay a) :: Morph (Wye (a -> Splay a))) Binary = Binary
type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary = Binary
type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zag :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary = Binary
type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Right :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary = Binary
type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.Splay

type Morphing (('Rotate :: Wye (Splay (a -> Splay a)) -> Morph (Wye (Splay (a -> Splay a)))) > (('Left :: Splay (a -> Splay a) -> Wye (Splay (a -> Splay a))) > 'Zig ('Zig :: a -> Splay a)) :: Morph (Wye (Splay (a -> Splay a)))) Binary = Binary
type Morphing (('Into :: (Type -> Type) -> Morph (Type -> Type)) > Comprehension Maybe) (Tape List) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing (('Into :: (Type -> Type) -> Morph (Type -> Type)) > Comprehension Maybe) (Tape List) = Comprehension Maybe
type Morphing (('Into :: (Type -> Type) -> Morph (Type -> Type)) > Tape List) (Construction Maybe) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing (('Into :: (Type -> Type) -> Morph (Type -> Type)) > Tape List) (Construction Maybe) = Tape List
type Morphing ('Pop :: a -> Morph a) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Pop :: a -> Morph a) List = List
type Morphing ('Push :: a -> Morph a) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Morphing ('Push :: a -> Morph a) List = (Exactly <:.:> List) > ((->) :: Type -> Type -> Type)
type Substance ('Rest :: a -> Segment a) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Substance ('Rest :: a -> Segment a) List = List
type Substance ('Root :: a -> Segment a) List Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Some.List

type Substance ('Root :: a -> Segment a) List = Maybe
type Substance ('Down :: a -> Vertical a) (Tape t <::> Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Tape

type Substance ('Down :: a -> Vertical a) (Tape t <::> Tape t) = Reverse t <::> Tape t
type Substance ('Up :: a -> Vertical a) (Tape t <::> Tape t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Tape

type Substance ('Up :: a -> Vertical a) (Tape t <::> Tape t) = t <::> Tape t
type Primary (TT ct ct' t t') a Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TT

type Primary (TT ct ct' t t') a = (t :. t') > a