ALLSCII
Jump to navigation
Jump to search
ALLSCII is a stack-based esolang created by Cortex where every printable ASCII character (excluding whitespace (excluding the space)) is (will be) a valid command. I'm somewhat out of ideas for commands, so if you have an idea for a command feel free to add to the table below.
Commands
Character | What it does | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Push 1 to the stack. | ||||||||||||||||||
! |
Increment the top of the stack by 1. | ||||||||||||||||||
" |
Increment the top of the stack by 2. | ||||||||||||||||||
# |
Increment the top of the stack by 5. | ||||||||||||||||||
$ |
Increment the top of the stack by 15. | ||||||||||||||||||
% |
Increment the top of the stack by 22. | ||||||||||||||||||
& |
Increment the top of the stack by 50. | ||||||||||||||||||
' |
Toggle , !, ", #, $, %, & between incrementing and decrementing.
| ||||||||||||||||||
( |
Print something depending on the top of the stack.
| ||||||||||||||||||
) |
Print ")". (I'm sorry) | ||||||||||||||||||
* |
Multiply top 2 stack values, and push it. | ||||||||||||||||||
+ |
Add top 2 stack values, and push it. | ||||||||||||||||||
, |
Print the [top of the stack]'th letter of the alphabet. (uppercase) | ||||||||||||||||||
- |
Push [second to top stack value]-[top stack value]. | ||||||||||||||||||
. |
Print the [top of the stack]'th letter of the alphabet. (lowercase) | ||||||||||||||||||
/ |
Like - , but with division.
| ||||||||||||||||||
0-9 |
Multiply the top stack value by that number. | ||||||||||||||||||
: |
Pop the top stack value. | ||||||||||||||||||
; |
Push the top stack value. | ||||||||||||||||||
< |
Pop the top stack value, and reverse the top [original top of stack] stack values. | ||||||||||||||||||
= |
Reverse the entire stack. | ||||||||||||||||||
> |
Push the ASCII value of one byte of string input from the user to the stack (if no input is left, return 0). | ||||||||||||||||||
? |
Print the character which is equal to String.fromCharCode(32+ [top value of stack]) (tabs and newlines can be printed by pushing negative numbers to the stack).
| ||||||||||||||||||
@ |
Begin function declaration.* | ||||||||||||||||||
A |
End function declaration.* | ||||||||||||||||||
B |
Call a defined function.* | ||||||||||||||||||
C |
While the top of the stack is not 0. | ||||||||||||||||||
D |
While the top of the stack is 0. | ||||||||||||||||||
E |
Find the next character's ASCII value, subtract 32, and begin a loop that runs that many times (ignoring the next character). | ||||||||||||||||||
F |
End a loop. | ||||||||||||||||||
G |
Toggle C and D between while loops and if statements.
| ||||||||||||||||||
H |
Prematurely end the program. | ||||||||||||||||||
I |
Push 1 if the top of the stack has property X, otherwise push 0. Similar to : in Pizza Delivery, but useful this time. Mainly useful for custom functions.
| ||||||||||||||||||
J |
Pop every value on the stack. | ||||||||||||||||||
K |
Pop the top [top stack value] stack values. | ||||||||||||||||||
L |
Push number input to the stack. | ||||||||||||||||||
M |
Pop the top stack value, and push the top [original top stack value] stack values. | ||||||||||||||||||
N |
Push the most recently popped value. | ||||||||||||||||||
~ |
Begin or end a comment. | ||||||||||||||||||
O |
Increment precision | ||||||||||||||||||
P |
Decrement precision | ||||||||||||||||||
Q |
Loads the top of the stack into one of the 94 accumulators(All the visible characters) | ||||||||||||||||||
R |
Pushes an accumulator onto the stack | ||||||||||||||||||
S |
Executes the top of the stack as an ALLSCII program | ||||||||||||||||||
T |
Prints the whole stack | ||||||||||||||||||
U |
executes an accumulator if 2 values of the stack are greater than. | ||||||||||||||||||
V |
executes an accumulator if 2 values of the stack are equal to. | ||||||||||||||||||
W |
executes an accumulator if 2 values of the stack are less than. | ||||||||||||||||||
X |
executes an accumulator if 2 values of the stack are greater than or equal to. | ||||||||||||||||||
Y |
executes an accumulator if 2 values of the stack are less than or equal to. | ||||||||||||||||||
Z |
executes an accumulator if 2 values of the stack are not equal to. | ||||||||||||||||||
\ |
pops 2 values, pushes the remainder of former divided by latter. | ||||||||||||||||||
` |
exit from execution of the "S" command. | ||||||||||||||||||
_ |
ignores the next character | ||||||||||||||||||
^ |
powers two values of the stack. (The former to the power of the latter) | ||||||||||||||||||
|
square-roots the top of the stack. | ||||||||||||||||||
a |
pushes the precision | ||||||||||||||||||
b |
pushes the current stack depth | ||||||||||||||||||
c |
runs the rest of the line as a system command. | ||||||||||||||||||
d |
bitwise NOT the top of the stack. | ||||||||||||||||||
e |
bitwise XOR the top of the stack by the second-top value. | ||||||||||||||||||
} |
bitwise AND the top of the stack by the second-top value. | ||||||||||||||||||
{ |
bitwise OR the top of the stack by the second-top value. | ||||||||||||||||||
[ |
bitwise left shift the top value by the second-top value. | ||||||||||||||||||
] |
bitwise right shift the top value by the second-top value. | ||||||||||||||||||
f |
Pushes the digital root of the top number of the stack | ||||||||||||||||||
g |
Pushes the top number-th number in the Fibonacci sequence. | ||||||||||||||||||
h |
Pushes the factorial of the top number-th number. | ||||||||||||||||||
i |
Decrement the top of the stack by 1. | ||||||||||||||||||
j |
Decrement the top of the stack by 2. | ||||||||||||||||||
k |
Decrement the top of the stack by 5. | ||||||||||||||||||
l |
Decrement the top of the stack by 15. | ||||||||||||||||||
m |
Decrement the top of the stack by 22. | ||||||||||||||||||
n |
Decrement the top of the stack by 50. | ||||||||||||||||||
o |
starts an infinite loop | ||||||||||||||||||
p |
Jump to the top of the stack line in the code. | ||||||||||||||||||
q |
Jump to the top of the stack character in the code. | ||||||||||||||||||
r |
Pushes the maximum value of the stack. | ||||||||||||||||||
s |
Pushes the minimum value of the stack. | ||||||||||||||||||
t |
Doubles the top of the stack. | ||||||||||||||||||
u |
Pushes a random number from 0 to the top of the stack number. | ||||||||||||||||||
v |
Pushes a random number from the top of the stack number to the second top of the stack number. | ||||||||||||||||||
w |
Wait the top of the stack seconds. | ||||||||||||||||||
x |
Append the top of the stack by the second top of the stack. | ||||||||||||||||||
y |
Drop the second top of the stack characters to the top of the stack. | ||||||||||||||||||
z |
Cancel out the recent operation in the program. |
Function declaration
*In ALLSCII, functions can be defined with this syntax, where *
is any character and %
is any code:
@*%A
Whitespace is ignored (except spaces, of course). For example, a function that pushes the number 1000 to the stack could look like this:
@K &&&&&&&&&&&&&&&&&&&& A
It would be called like this:
BK
Examples
Note: The first 4 examples were made when )
was the last command in the list.
Hello, World!
'!(
99 bottles of beer
!(
Quine
)
Cat program
"!(
Truth-machine
LC 35"?F 35!?
Print "Antidisestablishmentarianism"
,~ A~ $'".~ n~ '#!.~ t~ '##!.~i~ #.~ d~ '#.~ i~ ##.~ s~ '$'!.~e~ $'!.~ s~ '!.~ t~ '$"".~a~ '!.~ b~ ##.~ l~ '"!.~ i~ '##.~ s~ '##!.~h~ '#.~ m~ '#"!.~e~ '#"".~n~ #!.~ t~ '$"".~a~ '$".~ r~ '#"".~i~ #"!.~ a~ '$'".~n~ #.~ i~ '##.~ s~ '#!.~ m~
Truth-machine
L~ push number input to the stack ~ C~ while the top of the stack is not 0 ~ ~ push 1 to the stack ~ 44~ multiply it by 4 twice to get 16 ~ !~ increment it by 1 to get 17 ~ ?~ print the character with the (for lack of a better term) Unicode value of 32 plus the top of the stack, which is the character 1 (Unicode value 49) ~ F~ end loop ~ ~ if the number input is 0, then the while loop was never executed, so if we've gotten this far in the program: ~ ~ push 1 to the stack ~ 44~ multiply the top stack value by 4 twice to get 16 ~ ?~ see the previous ? in the code ~ ~ end program
Minimized:
LC 44!?F 44?