Queuenanimous
Jump to navigation
Jump to search
Queuenanimous is an esolang by User:PythonshellDebugwindow.
Memory model
Queuenanimous uses an unbounded queue of unbounded signed integers.
Syntax
Like in brainfuck, each character of the program represents one command.
Commands
Dequeuing from an empty queue returns zero.
Command | Effect |
---|---|
0 |
Enqueue zero |
+ |
Dequeue N, enqueue N + 1 |
- |
Dequeue N, enqueue N - 1 |
> |
Dequeue N, enqueue N |
[ P] |
While loop: at each iteration, dequeue N, and break if N is zero; else run P and jump back to the start of this loop, dequeue N again, and so on |
Computational class
Queuenanimous is Turing-complete as 3-cell brainfuck can be translated into it (no IO).
All programs must begin with 000000
.
brainfuck | Queuenanimous |
---|---|
+ |
[+0]+000[+0]>0[+0]>0
|
- |
[]
|
> |
[+0]>0
|
< |
[+0]>0[+0]>0
|
[ |
[+0[+0]>0[+0]>0[+0]>0
|
] |
]>0[+0]>0[+0]>0
|
This translation works by using pairs of integers to represent data as unary integers. Every 10
pair represents a 1 in unary and every 00
pair separates the integers from each other.
See also
External resources
- An interpreter on GitHub