Albanian Laundry Machine

From Esolang
Jump to navigation Jump to search

Albanian Laundry Machine is a cell-based programming language made in 10 minutes.

Structure

Albanian Laundry Machine runs on a left-unbounded tape of cells, each of which contains an unbounded integer. The pointer starts at the rightmost cell.

Commands

Type 2 commands require their own line. Any unrecognized commands should simply cause the compiler to display the lyrics to Never Gonna Give You Up and quit execution, as should any compiler errors (e.g., mismatched loops, the r command).

Command Type Function
f 1 Sets int to 0 if nonzero and 1 if zero
g 1 Sets int to its square plus 1
í 1 Sets int to the aliquot number of that number
ç 1 Sets int to the ceiling of its cube root
{ 1 Moves cell pointer one cell to the right
] 1 Moves cell pointer one cell to the left
Put on a fursuit! 2 Begins a loop that runs while the integer under the pointer is zero
Take off your skin! 2 Begins a loop that runs while the integer under the pointer is nonzero
aaaaaaaaa 2 Ends any loop
j 1 Prints int as an ascii character
ó 1 Prints int as an integer
u ok bro 2 Assigns int to the ascii value of the next character in the input queue
isehoifhsofo 2 Prints "Why couldn't the trans man eat meat? Because he was a her before"
guidsvidi 2 Interprets remaining input as brainfuck and run it on the current tape
resest 2 Zeroes all cells
r 1 Throws an error
llllllllllllll 2 Ends execution (not required, as reaching the end of the program also halts execution)

Examples

Prints "e"

ggggçggj

Hello, World! (unoptimized)

ggggííííggííígííígíííííííííííííííííííííííííííígçjf
ggggçggjfggggííííggííííçggíçgígííígíííígçíjj]
ggggííííggíííííígíígíígçj]
ggggííígíjfggggçgígígíígçjf
ggggííííggííííçggçgígíííííííííígíííííííííííígíííj{
jfggggííííggííííçggíçgígíígígçíj{
jfggggííííggíííííígíígííííígçgígííííííígçjf
ggggííííggííííçggíçgígíííj