Combinators
A combinator is a function or operator that only refers to its arguments and operands without modifying them in any way.
Symbol | APL expression | Bird(1) | TinyAPL | Diagram |
---|---|---|---|---|
y | Identity | ⊣ /⊢ | ||
x | Kestrel | ⊣ | ||
y | Kite | ⊢ | ||
y F y | Warbler | ⍨ | ||
y F x | Cardinal | ⍨ | ||
F (G y) | Bluebird | ∘ /⍤ /⍥ | ||
G (F y) | Queer | ⍛ | ||
F (x G y) | Blackbird | ⍤ | ||
(G x) F (G y) | Psi | ⍥ | ||
y F (G y) | Starling | ⟜ /⇽ | ||
(F y) G y | Violet Starling | ⊸ /⇾ | ||
x F (G y) | Dove | ∘ /⟜ | ||
(F x) G y | Zebra Dove | ⍛ /⊸ | ||
(F y) G (H y) | Phoenix | «» | ||
(x F y) G (x H y) | Pheasant | «» | ||
(F x) G (H y) | Dovekie | ⊸ + ⟜ | ||
(y G x) F (x G y) | Parrot(2) | ⸚ | ||
x F (x G y) | Eastern Nicator | ⇽ | ||
(x F y) G y | Western Nicator | ⇾ |
Additionally, some other primitives have combinator-like behavior:
APL expression | TinyAPL | Diagram |
---|---|---|
n | ⍨ | |
n | ⍨ | |
F y | ⁖ | |
x G y | ⁖ |
Footnotes
-
Some combinators have bird names, originating from To Mock a Mockingbird by Raymond Smullyan. Some of the bird names are taken from the Uiua combinator page.