Naming conventions - DennisMitchell/jellylanguage GitHub Wiki
Single-letter atoms
- Uppercase letters with optional dots above or below represent monads.
- Examples:
A
(absolute value),Ḃ
(modulo 2).
- Examples:
- Lowercase letters, with dots above or below represent dyads.
- Examples:
g
(GCD),ṙ
(rotate list).
- Examples:
- Hooked letters represent nilads.
- Example:
ɠ
(read STDIN line).
- Example:
- Where possible, a letter with a dot below should be the (formal or informal) inverse operation of its dot-less counterpart.
- Example:
b
is “to base” andḅ
is “from base”.
- Example:
Double-letter atoms
- Double-letter nilads should start with
Ø
.- Example:
Øa
(lowercase alphabet).
- Example:
- Double-letter monads should start with
Æ
orŒ
.- Examples:
ÆS
(sine),Œ!
(all permutations).
- Examples:
- Double-letter dyads should start with
æ
orœ
.- Examples:
æ«
(bit shift left),œc
(combinations without replacement).
- Examples:
(The Æ
/æ
atoms tend have a more “numerical” nature; the Œ
/œ
ones are for list operations. Æ
and Œ
were chosen to mean “algebraic/arithmetic extensions” and “other extensions”, respectively.)
Quicks
- Non-Latin letters, or Latin letters with unusual modifiers (cedilla, tilde, …) represent quicks. Their case hints at the result’s arity.
- Example:
ß
(recurse),ç
(last link as dyad).
- Example:
- Double-letter quicks should start with
Ð
.- Example:
Ðf
(keep all elements satisfying a condition).
- Example: