The Ornithomicon is the infamous grimoire of Avian Arithmetic.

Before progressing deeper into the enchanted forests, you should be familiar with the 9 birds of the Bekimet, Becekew and Sekei forests.

Avian Truths & Lies

The Kestrel takes two words and discards the second word. In other words, it always keeps the first one, this is the word for True:

K   Kxy

The Kite takes two words and discards the first word. In other words, it never keeps the first one, this is the word for False:

KI   KIxy

The Cardinal swaps the second and third words, it can turn a lie into a truth, and a truth into a lie, this is the word for Not:

C(KI)   C(KI)(K)(KI)xy

The Mockingbird takes 2 words that can be either True or False, and says True if at least one of them is True, this is the word for Or:

M(KI)(K)   W(WK)(KI)(K)xy

Two Starlings and a Kestrel can work together to say True, when both words are True, this is the word for And:

SSK(KI)(K)   SSK(KI)(K)xy

Since the word for True keeps the first of 2 words, and False selects the second, we need a way to pass the second and third words to the first one. The Idiotbird is the equivalent to IfThenElse:

I(KI)   I(KI)xy

Avian Numerals

Avian numerals are somewhat odd, the value of a number is equal to how many times a word applies itself on another. Considering that numbers are times a word is applied onto another, applying "2 sqr" to a number "3" would give "sqr (sqr 3)", or 81.


It looks like a Starling and Bluebird always give us the succeeding number, since "SB2" is 3 and "SB3" is 4.

SB5  6 SB(SB(SB(SB(WB))))fx

Among its many talents, the Bluebird can also Multiply numbers, as "2(3f)" is the same as "6f", thus, "B(2)(3)" is the same as "6".

B23  6 B(2)(3)fx

Our old friend the Thrush is capable of calculating the Power of two numbers. The following example is essentially applying the word three (which itself applies a word 3 times) four times.

T34  81 C(WK)(3)(4)fx

As we travel deeper into the forest, we encounter the Nightingale, which applies a word to the result of the second and the fourth, and to the result of the third and the fourth:

N  ()() B(BS)Bfxyz

The Nightingale allows us to apply the first number onto the second, or effectively Add numbers together:

NB23  5 B(BS)BB(2)(3)fx

Ornithologics is the study of Avian Computing.


const I = a => a;
const K = a => b => a;
const S = x => (y => (z => x(z)(y(z))));
const KI = a => b => b;
const C = f => a => b => f(b)(a);
const M = a => a(a);
const B = f => g => a => f(g(a));
const TH = a => b => b(a);
const V = a => b => f => f(a)(b);
const BL = f => g => a => b => f(g(a)(b));
const Y = x => (x(Y(x)));

Stack-machines for Birdwatchers

OverWarbling Cardinal?WCxyxz

incoming church encoding