MMP

From Esolang
Jump to navigation Jump to search

MMP - MicroMathProcessor

This language is built to do math. I suppose that a 'MMP+' could include text output, but currently all I/O is integer I/O because I want all programs to run the same on all platforms; different charsets, and standards would make that impossible.

By default, position 1 is selected on tape. Positions below 1 aren't assumed to exist.

R=register

s select position R on tape
r copy tape selection to register
t copy register to tape
o output register
i input to register
( while register
) wend
f if R>0 goto instruction # at tape
g GOTO instruction R
e end execution
+ increment register
- decrement register
< move selection on tape left
> move selection on tape right

This language is Turing-complete.

Brainfuck MMP Brainfuck MMP
< < > >
+ r+t - r-t
, i . o
[ r( ] r)

this conversion shows MMP to be turing complete.


Please don't flame me for how bad this language is, or how badly formatted this page is; I am 13 and this is my first esolang. Not to mention, I can't figure out how to use formatting on this page editor.