Diacritics
Jump to navigation
Jump to search
Diacritics is a Lambda calculus syntax that uses stacked Unicode diacritics to make seemingly tiny programs. A program will filter out everything other than diacritics when being parsed. In order for the diacritics to actually appear on screen, most programs use a seed letter (we'll use e in this article). Programs are impossible to read without a Unicode inspector due to the inability to distinguish diacritic positions.
Operators/Syntax
Operator | Equivalent to | Description |
---|---|---|
e̱ | λ or λ. | Creates an function. Unlike normal lambda calculus, this does not use a dot ending. |
ẹ | Apply | Applies a function to its argument. |
e̮ | ( | Starts a bracketed expression. |
e̯ | ) | Ends a bracketed expression. |
There is also many diacritics you can use for variable names:
è é ê ẽ ē e̅ ȇ ĕ ė ë ẻ e̊ ȅ e̋ ě e̍ e̎ e̐
Examples
This is equivalent to (λx.x)(λx.x):
ẽ̮̱̯̣̮̱̯̃̃̃
Y Combinator:
ë̱̮̱̣̮̣̯̯̣̮̱̣̮̣̯̯̇̈̇̇̇̈̇̇