Fishstacks
Fishstacks is a Deadfish derivative which uses a stack; the stack can only hold four elements, when a fifth element is pushed the bottom element is kicked out and eventually printed out to the screen. The name was originally meant to be Hpmestack but it was suggested that DeafStack or StackFish would be a better name, as it is a derivative, but eventually atriq came up with Fishstacks.
The Stack
First of all it is to be noted that the above specification were meant to be written in 30 seconds. However the language author accidentally set his timer to 30 minutes instead, and it took him about one whole minute to realize that. Unfortunately the extra time wasn't enough for him to think about including a "pop" function, so the "push" function is really just "set the accumulator to 0". No, it's slightly more *cough* subtle than that; "setting the accumulator to 0" has the side effect of causing the previous value of the accumulator to be pushed to the output queue. Happily for everyone the language wasn't called "Dequefish"...
As a side note the 30 minutes timer rang just before this page was saved.
The Commands
Command | Effect |
---|---|
i |
Increment top element |
d |
Decrement top element |
p |
Push a new zero to the stack. |
s |
Square top element |
If there were already four elements in the stack, and the command p
is used, the bottom element is outputted and discarded.
Needless to say, Fishstacks's arithmetic is expected to be as ingenious as Deadfish's; whenever the top element reaches -1 or 256 the top element is set to 0, as if the command p
was used. This means Fishstacks is more powerful than its predecessor Deadfish: not only does it have a whole stack instead of a lone accumulator, but it can output two more different values!
Examples
User:Killer64 had too much time on his hands and wrote "Hello, World!".
iiisdsiiiiiiiipiiisisipiiisisiiiiii iipiiisisiiiiiiiipiiisiisdddddddddd piiisddsdddddpiisiisddddpiiissiiiii ipiiisiisddddddddddpiiisiisdddddddp iiisisiiiiiiiipiiisispiisiisdddpppp
About the authors
User:Koen refuses to take full responsibility for this language; User:Taneb is guilty for the name, User:monqy is glad that now he can use this language to write a program, and User:nooodl provided meaningful insights about the semantics.
External resources
- #esoteric logs of the language creation.
- Fishstacks interpreter in C#