We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.
Dodecahedron
Jump to navigation
Jump to search
Dodecahedron is an esolang I created which centers on 12 dodecahedrons nested inside one another at different z-levels, 0 to 11. This is the memory. The instruction space is itself a square grid where you can place instructions. The instructions have a likeness to Befunge while also being more advanced due to the memory.
| Instruction | Meaning | ||
|---|---|---|---|
| < > ^ v | Change the instruction pointer's direction. | ||
| u d | Move the memory pointer up or down in the z-direction. (11 <--> 0) | ||
| 0-9, A, B | Send the memory pointer to the cell with that number on the current dodecahedron. (A = 10, B = 11) | ||
| i, d | Increment and decrement. | ||
| , | Ask for input. (numeric) | ||
| ; | Ask for input. (ASCII) | ||
| . | Output and pop. (numeric) | ||
| : | Output and pop. (ASCII) | ||
| " | String mode toggler. (I really like Befunge) | ||
| +-*/% | Math operations on two values. (The current memory cell and the one below (each face of a given dodecahedron is a memory stack.) ) | ||
| # | Random direction. | ||
| ? | Quantum direction. (3 new "pointers", the first one to hit an instruction becomes the new pointer) | ||
| ' (single quote NOT double quote ") | Toggle pushmode (push all numbers) | ||
| (, ) | Moves the memory cell one step up or down the stack. (pushing an element moves it up by force so these control that.) | ||
| @ | If-statement | ||
| $ | Else-statement | ||
| y, n | Yes- and no-markers (ending an if-statement) | ||
| ! | Skip the next command. | X | End. |
Due to each dodecahedral face being its own stack, there are not 144 storage points but 144 stacks, each infinite in height.
Example programs
><
v ^
>v ^<
v< >^
"!dlrow ,olleH":::::::::::::X
Do nothing
X