MoveDelete

From Esolang
Jump to navigation Jump to search

MoveDelete is a stack based programming langauge with two stacks.


If a letter is capital, the stack used is stack1

If a letter is lowercase, the stack used is stack2

both stacks start with a value of 1


Syntax
Command Description
I/i take input as a ascii character
O/o output top value of stack as a ascii character
A/a add the top two values of the stack together and push the result
N/n replace the top value of the stack with it's negated version
C/c push the top value of the stack, cloning it.
M/m replace the second to top value of the unused stack with the top value of the used stack removing it from the stack in the process (or top value if the unused stack only has one value)
* delete values from stack2 until it hits a 1 (still deletes the 1), then push 1 if the entire stack was deleted
!n jump to command n if the top value of both stacks are equal
>n jump to command n unconditionally
# output the entirety of both stacks


Code stuff:


Cat program:

IO>1

Truth Machine:

CAAAACACAANIAcna!28nmnMMNMao>19MMNO