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