Noddity
Jump to navigation
Jump to search
Noddity is an esolang created by User:Yayimhere for proving A Question of Protocol turing complete. it is basically just a Minsky machine. It works on two unbounded registers
Etymology
It is simply a combination of the word "Not" and "Oddity", as it is not much of an oddity compared to other esolangs.
Memory
Noddity uses two unbounded registers, with a pointer pointing to one at all times
Definition
It has the following commands:
| Command | Meaning |
|---|---|
s |
Switch between the two registers |
i |
Increment current register by 1 |
d |
Decrement current register by 1, Unless it decrements zero. In that case, jump to line n, where n is the number of times d is repeated.
|
n |
NOP |
g |
Unconditionally goto line n, where n is the number of times g is repeated.
|
h |
Halt. |
Line's indexed with the starting number 1.
Turing completeness proof
Translating 2 register ESMMN into Noddity is trivial:
℘x:y -> sd*y ℘y: -> si ℘xy -> d*y ℘y -> i ℘x -> g*x ℘ -> h
Note that x: notates that the register chosen is different from the last one chosen, and its absence notates it is not different. Also note that x*n notates command x repeated n times. separate all commands with n