-25 bytes (O_o)

From Esolang
Jump to navigation Jump to search

-25 bytes (O_o) is an esolang by User:PrySigneToFry and inspired by -5 bytes ;) which is inspired by 0 bytes XD which is inspired by 9 bytes :I which is inspired by 13 bytes :D which is inspired by 16 bytes :P which is inspired by 25 bytes o:.

Command table

Cmd Description
E Addition: Pop two values a and b, then push the result of a+b
~ Subtraction: Pop two values a and b, then push the result of b-a
% Multiplication: Pop two values a and b, then push the result of a*b
@ Integer division: Pop two values a and b, then push the result of b/a, rounded down. According to the specifications, if a is zero, ask the user what result they want.
' Modulo: Pop two values a and b, then push the remainder of the integer division of b/a.
~ Logical NOT: Pop a value. If the value is zero, push 1; otherwise, push zero.
) Greater than: Pop two values a and b, then push 1 if b>a, otherwise zero.
[ PC direction right
* PC direction left
R PC direction up
q PC direction down
X Random PC direction
a Horizontal IF: pop a value; set direction to right if value=0, set to left otherwise
( Vertical IF: pop a value; set direction to down if value=0, set to up otherwise
" Toggle stringmode (push each character's ASCII value all the way up to the next ")
+ Duplicate top stack value
M Swap top stack values
p Pop top of stack and discard
^ Pop top of stack and output as integer
u Pop top of stack and output as ASCII character
N Bridge: jump over next command in the current direction of the current PC
c A "get" call (a way to retrieve data in storage). Pop two values y and x, then push the ASCII value of the character at that position in the program. If (x,y) is out of bounds, push 0
A "put" call (a way to store a value for later use). Pop three values y, x and v, then change the character at the position (x,y) in the program to the character with ASCII value v
} Get integer from user and push it
× Get character from user and push it
@ End program
0123456789 Push corresponding number onto the stack

Examples

Not on display.

Implementation

This Esolang may implemented in a strange way, such as there is already a Befunge interpreter in Javascript, then you just grab it then change the source code in it, and then fill it with lots of unnecessary comments. Full implementations are not shown here. JUST FUCKING COPY ALL THE SOURCE CODE OF THIS BEFUNGE-93 INTERPRETER AND CHANGE SOMETHING ON IT THEN FILL IT WITH GARBAGES, THEN PUT IT ON SOME OPERATING SYSTEM THAT USES STRANGE FILE SYSTEM THAT PRODUCE OVERFLOW OF FILE SIZE TO GET -25 BYTES!!!!!!!!!!!!!!!!!!!!!!!!

Categories