Alphabet Stew
Jump to navigation
Jump to search
Brainfuck derivative using only letters (a – z) Created by User:DMC
Concept
- A stack based esoteric programming language with exactly 26 commands
- Each command is represented by a single character [a - z]
- Numbers [0 - 9] are not used
- Any character not within the set [a-z] is ignored
- whitespace may be used for clarity
Description
- an infinite array of cells
- all memory is initialized to zero
- commands that require two values to be pushed will pop two values and push the result onto the stack
- commands that operate on one cell do not use the stack
- '!' diagnostic command to print out memory cells up to highest value of the data pointer, does not have to be implemented
- no effort was made to assign commands to any particular letter
Instruction | Operation | Explanation |
---|---|---|
a | shift right | current memory |
b | . |
output ascii |
c | peek | top of stack |
d | < |
p -= 1, p<0 is an error |
e | + |
increment memory |
f | jump left | program counter -= current memory |
g | add | push two |
h | jump right | program counter += current memory |
i | ] |
close loop |
j | clear stack | top of stack = zero |
k | xor | push two |
l | pop | into current memory |
m | shift left | current memory |
n | halt | program stop |
o | push | from current memory |
p | and | push two |
q | or | push two |
r | input decimal | current cell = input mod 256 |
s | > |
p += 1 |
t | [ |
open loop |
u | - |
decrement memory |
v | output decimal | three digit zero filled |
w | exchange | top two values on the stack |
x | subtract | push two |
y | not | (p) = not(p) |
z | , |
input one keypress |
Examples
Hello, World!\n
oemmemosemmmmmeoooog gseogcosemmmogscosee emogdeeeossemmememmm uosemmmmmosemmememmo ddddouuuoouuuuuuuoss sosogluuuuoltbli!
Fibonacci
First 14 values before it overflows 8 bits
emmmmuuussemmemdvsbdoeodtscvsbdgowdui!
Truth-machine
rtsetviiv
External resources
- Alphabet Stew – Interpreter written in Python 3