DO

From Esolang
Jump to navigation Jump to search

DO is a programming language that is based off of recursion made by User:Fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff. Every program has one input. also multithreaded

Commands

DO only has a few commands:

Commands
Command what does it DO
DO does that value in the accumulator as a DO program
S} end this program. (note that this goes one level back in recursion)
A? checks if this code is equal to the accumulator, if it is, skip to the next NP
NP print its first letter, then delete it
RC checks if the recursion depth > accumulator's length / 2, if it is, skip to the next NP,
JM jump to nearest next letters, then move forward 1
00 check if accumulator is the empty string, if yes, skip to the nearest next command (except that one) and add the string "Hello, World"
99 print one verse of the 99 bottles of beer song using the accumulator as the number
AD add the recursion depth as a character to the accumulator, if it's 0, set the accumulator to ""
++ add the recursion depth as a number balanced mod 80 to the accumulator
{} if depth = 1, then set accumulator to input, if its 2, subtract the last digit, if its 0, set accumulator to this code
2{ Do this code, starting right here.
}{ subtract recursion depth from accumulator

other commands are comments

programs

hello world

00gogoloNP00opJMloop

Quine

{}NP00{}

Truth-machine

2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{2{AD{}}{S}S}
#S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}S}00zron2{++S}NPAD00onzr++NP

crash

{}DO

infinite loop

LOAD00LO