AllChar

From Esolang
Jump to navigation Jump to search

I am lazy, so I'll just put the documentation here. Currently unimplemented. Inspired by ALLSCII. I'll probably make this better soon. This language has 3 unnamed stacks.

Current version is 1.3

NOP stands for No OPeration.

space: NOP
!: Pop, factorial, push
": Pop and output as char
#: Input and push (char)
$: *100
%: Pop 2, modulo, push A%B
&: /100
': Output string between these
(): While 0
*: Pop 2, multiply, push
+: Pop 2, add, push
,: Input and push (bignum)
-: Pop 2, subtract, push A-B
.: Pop and output as bignum
/: Pop 2, divide, push A/B
0-9: Push 0-9 onto stack
:: Duplicate (Peek and Push)
;: Pop but don't output
<: -1
=: Pop 2 and compare. If same, push 1, if not, push 0
>: +1
?: Pop 2, output random number between them
@: Skip next command if 0
A-F: Push 10-15 onto stack
G: Like @ but nonzero
H: Print Hello, World!
I: FizzBuzz from 1 to 100
J: Pop 2, compare, push 1 if A>B, 0 otherwise
K: Pop 2, compare, push 1 if A>=B, 0 otherwise
L: -10
M: +10
N: 99 bottles of beer on the wall
O: NOP
P: Primes
Q: Print Q
R: Pop, ROT13, push
S: Jump to matching O if 0
T: Truth machine
U: Pop 2, compare, push 1 if A<B, 0 otherwise
V: Pop 2, compare, push 1 if A<=B, 0 otherwise
W: -100
X: +100
Y: Start of infinite loop
Z: Swap
[]: While not 0
\: Start and end of comments
^: Pop 2, exponentiation, push A^B
_: NOT
`: AND
a: OR
b: XOR
c: Pop and goto
d: Disan count
e: Set to 0
f: Fibonacci Numbers starting 1,1
g: Pop, 0-, push
h: Print Hello, world!
i: Pop, digital root, push
j: Pop, reciprocal, push
k: Print code
l: Print printable ASCII range
mn: Loop top of stack times (no nesting)
o: NOP
p: Output pi
q: Print q
r: Reverse stack
s: S but o and nonzero
t: Next stack
u: Previous stack
vw: [] but once
xy: () but once
z: Output tau
{: Rotate entire stack down
|: Halt
}: Rotate entire stack up
~: Escaping for strings

Truth machine without T:

,o.s