E62qpodb593

From Esolang
Jump to navigation Jump to search

E62qpodb593 is an esolang made by AlexIsOK using the license Unlicense.

Instructions

This language uses simple instructions:

Name Character
Start a loop e
Copy value at pointer to clipboard z
Increment value of stack at pointer q
Decrement value of stack at pointer p
Output value of stack at pointer to standard output o
Move pointer to the right d
Move pointer to the left b
Set value at pointer to clipboard 2
End loop 3
Increment value at stack if lower than clipboard 6
Decrement value at stack if lower than clipboard 9
Go up five values (same as qqqqq) y
Go down five values (same as ppppp) k
GOTO the HOME address (usually 0) 5
Set the value of the stack at pointer to 0 (NUL) 0
Set the value of the stack at pointer to 64 (@) t


Looping

The amount of times to loop is stored in the pointer address 4, meaning that the maximum times you can loop is 127. The language does NOT support nested loops.

Examples

Hello World

The current shortest version of outputting "Hello, World!" made by AlexIsOK is 72 bytes.

tqqqyoyyyyyypoyqqooqqqoztkkkkotkkkkkkppotyyyyyppo2oqqqokpokkqqotkkkkkkpo

Broken down:

 tqqqyo #set the pointer address of pointer#0 to 67 (H) and output
 yyyyyypo #e
 yqqoo #ll
 qqqo #o
 z #copy to clipboard
 tkkkko #,
 tkkkkkkppo #space
 tyyyyyppo #W
 2 #paste 'o' to stack value
 o #output 'o'
 qqqo #r
 kpo #l
 kkqqo #d
 tkkkkkkpo #!

Alphabet

To print out capital letters A through Z, you can use ddddyyyyydteqo3.

Broken down:

 dddd #goto address to set amount of times to loop
 yyyyy #set the value of address 4 to 25.
 d #move to the right one
 t #set the new address value to 64 (@)
 e #start the loop
   qo #increment and output (A) is after (@)
 3 #end loop

Implementations

The original implementation is in Java, which can be found here.
The same repository also hosts an implementation for JavaScript and C++.