Blues machine
Jump to navigation
Jump to search
- Note that blues machine is typically lowercased except, often, at the start of a sentence.
The blues machine is an OISC esolang by User:PythonshellDebugwindow.
Syntax
Each line in a blues machine program is either empty, a comment, or the blues instruction. Comments are denoted by #
.
The blues instruction
The semantics of the blues instruction are as follows (using floor division, in such a way that division by 0 yields 0):
++*a; *b *= *c; *d /= *e; if(*f) goto (g ? h : *h);
Its syntax (spaces after commas are optional):
blues a, b, c, d, e, f, g, h
All values are integers, and the memory is initialized to all zeros.
Examples
Infinite loop
blues 0,0,0,0,0,0,0,0
Truth-machine
Replace <input>
with your input.
blues <input>,0,0,0,0,1,0,0
Computational class
Blues machine can simulate any Minsky machine, so it is Turing-complete. The inability to subtract is a slight obstacle, but a counter value of x can be encoded as 2x to get around this. See the full conversion here.
External resources
- An interpreter written in Python 3