libretto.lambda
Members list
Packages
Type members
Classlikes
A forest-like structured composition of arrows.
A forest-like structured composition of arrows.
For example,
A C
| <*> |
v v
B D <*> (E <*> F)
|
v
G
is an AForest[->, <*>, A <*> C, B <*> (D <*> (G <*> F))]
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Binary tree with leafs holding values of types F[X]
, F[Y]
, ... The complete structure of the tree is expressed by the type A
, using the tags for branches and leafs.
Binary tree with leafs holding values of types F[X]
, F[Y]
, ... The complete structure of the tree is expressed by the type A
, using the tags for branches and leafs.
Type parameters
- <*>
-
tag for branches, as it appears in
A
- A
-
captures the complete structure of the tree
- F
-
value type of leafs. Each leaf holds a value of type
F[X]
, for some typeX
(but appears inA
asT[X]
). - T
-
tag for leafs, as it appears in
A
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
Show all
Attributes
- Companion
- trait
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
CapturingFun.type
Attributes
- Supertypes
- Known subtypes
-
Show all
Attributes
- Supertypes
- Known subtypes
-
Attributes
- Supertypes
Attributes
- Supertypes
- Known subtypes
-
Category with n-ary coproducts.
Category with n-ary coproducts.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
A semigroupal category (i.e. monoidal without a unit object) with coproduct as the tensor (product).
A semigroupal category (i.e. monoidal without a unit object) with coproduct as the tensor (product).
Attributes
- Supertypes
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
DistributionNAry.type
Witnesses that field names are removed from
Witnesses that field names are removed from
A = name1 :: A1 || ... || nameN :: An
(and field separator changed from ||
to ∙
), we obtain
B = Nil ∙ B1 ∙ ... ∙ Bn
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
EnumModule.type
Attributes
- Supertypes
Attributes
- Supertypes
- Known subtypes
-
Witnesses that Items
is a list of name :: type
pairs, i.e. that Items
is of the form (Name1 :: T1) || ... || (NameN :: TN)
.
Type parameters
- C
-
information associated with lambda contexts (scopes)
- V
-
information associated with variables
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
Attributes
- Supertypes
Image of some morphism A -> B
in the target category ->>
.
Image of some morphism A -> B
in the target category ->>
.
Type parameters
- ->>
-
target category
- A
-
source of the original morphism in the source category
- B
-
target of the original morphism in the source category
- F
-
mapping of objects.
F[A, X]
is evidence that objectA
of the source category is mapped to objectX
of the target category.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
MappedMorphism.type
Witnesses that Label :: A
is one of Cases
, where Cases
is of the form (lbl1 :: A1) || (lbl2 :: A2) || ...
(where ||
associates to the left).
Witnesses that Label :: A
is one of Cases
, where Cases
is of the form (lbl1 :: A1) || (lbl2 :: A2) || ...
(where ||
associates to the left).
Similar to TupleElem, but for named members. Unlike TupleElem, Member
does not need a special "Nil
" type to mark the end of the members list: there is no ambiguity in Enum["foo" :: (Bar || Baz)]
— it is unambiguously a single-member Enum
.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Supertypes
- Known subtypes
-
Attributes
- Supertypes
A category on a subset of Scala types.
A category on a subset of Scala types.
Type parameters
- ->
-
morphism of the category
- Obj
-
witnesses that a Scala type is an object of the category.
Attributes
- Supertypes
Type parameters
- <*>
-
monoidal product in the target "category"
- F
-
relation on objects.
f: F[A, X]
means that objectA
of the source "category" is related to objectX
in the target "category". - |*|
-
monoidal product in the source "category"
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
An n-ary tuple of arrows Ai -> Bi
, where A = Nil ∙ A1 ∙ ... ∙ An
, B = Nil ∙ B1 ∙ ... ∙ Bn
, where ∙
associates to the left.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
Partitioning.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
PatternMatching.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
Show all
Attributes
- Companion
- trait
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
Projection.type
Attributes
- Supertypes
- Known subtypes
-
Show all
Attributes
- Supertypes
- Known subtypes
-
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait Category[->]Show all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
A collection of arrows of the form Ai --> B
, where A
is composed of Ai
s via binary sums <+>
, e.g. A = A1 <+> ((A2 <+> A3) <+> A4)
.
A collection of arrows Ai -> B
, where A = Nil || A1 || A2 || ... || An
, where ||
associates to the left.
A collection of arrows Ai -> B
, where A = name1 :: A1 || name2 :: A2 || ... || name_n :: An
, where ||
associates to the left.
A collection of arrows Ai -> B
, where A = name1 :: A1 || name2 :: A2 || ... || name_n :: An
, where ||
associates to the left.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
A collection of arrows A -> Bi
, where B = Nil || B1 || B2 || ... || Bn
, where ||
associates to the left.
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
SourceNAry.type
Nested tuples with a hole.
Nested tuples with a hole.
For example, a structure
(G[A], (G[B], (◯, G[C])))
where ◯ is the hole, can be represented as
Spine[Tuple2, G, F]
where F[X] = (A, (B, (X, C)))
Like Focus, a Spine
defines a path into a tupled structure, but Spine
also contains data along the path.
Type parameters
- **
-
the tuple type constructor
- F
-
context of the hole
- G
-
tuple elements ("garnish" hanging from the spine)
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Supertypes
Attributes
- Supertypes
- Known subtypes
-
Attributes
- Supertypes
- Known subtypes
-
Witnesses that A
is one of As
, where As
is of the form Nil || A1 || A2 || ...
(where ||
associates to the left).
An n-ary tuple of values F[Ai]
, where A = Nil ∙ A1 ∙ ... ∙ An
where ∙
associates to the left.
An n-ary tuple of values F[Ai]
, where A = Nil ∙ A1 ∙ ... ∙ An
where ∙
associates to the left.
Unlike Bin, which is an arbitrarily nested binary tree, the shape of nesting in TupleN is prescribed to be always associated to the left and is conceptually used to represent flat n-ary tuples.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
UnhandledCase.type
Attributes
- Companion
- object
- Supertypes
-
class Exceptionclass Throwabletrait Serializableclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
Value parameters
- P
-
representation of variable's origin (e.g. source code position)
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
- Self type
-