Boring and Idiotic milk supper
Boring and Idiotic milk supper (or BAIMS if you want to say it that way) is an Esolang about a totally casual day of drinking milk. There exists an arbitrary tally of accumulators which can be increased and decremented by varying amounts.
Architecture
The program memory is composed of a theoretically infinite number of cells, known as accumulators, that each store a single integer datum, representative of the contained milk, in the range [0, 500].
The accumulator is also measured in Liters. so outputting a number automatically adds an " L" to it (so outputting 5 becomes 5 L), This doesn't happen for ASCII character output.
At any instant in the program, a pointer marks the active accumulator.
Terminology
Also, the Esolang refers to everything with weird names to be cool. So:
- The accumulator is called the "stomach"
- Commands are referred to as "action"
- Functions are referred to as "consequence"
- Syntax is called "curfew"
For actual understanding of section names, these are only used in the body paragraph/section/whatever.
Syntax
Action | Consequence |
---|---|
sip |
+1L to stomach |
drink |
+6L to stomach |
chug |
+33L to stomach |
fart |
-1L to stomach |
replacement |
Go to the accumulator on the right |
revert |
Go to the accumulator on the left |
toilet |
-6L to stomach |
diarrhea |
-33L to stomach |
scream |
Output accumulator as ASCII character |
examination |
Output accumulator as a number (plus a label) |
insulin |
Go to corresponding glucagon if value in stomach is 0L.
|
glucagon |
Go to corresponding insulin if value in stomach isn't 0L.
|
thought |
Start a comment |
nevermind |
End a comment |
hunger |
Get input as a character |
quantity |
Get input as a number |
You can also end the program in multiple ways as listed here, or just dont include any:
overdose
dehydrated
diabetes
full
bye
constipation
homework
bored
studying
Example programs
Truth machine
quantity insulin replacement chug drink drink drink fart fart scream diarrhea sip sip toilet toilet toilet revert glucagon replacement chug drink drink drink fart fart fart scream
Cat
hunger insulin scream hunger glucagon overdose
Hello World
Outputs in all lowercase
chug chug chug drink fart scream fart fart fart scream drink sip scream scream sip sip sip scream diarrhea diarrhea diarrhea drink drink drink sip sip scream toilet toilet toilet fart fart chug chug chug drink sip sip scream toilet fart fart scream sip sip sip scream toilet scream toilet fart fart scream overdose
Adder
quantity replacement quantity revert insulin replacement sip revert fart glucagon replacement examination bored
Errors
If an error happens, yea deal with it. The program requires the current accumulator be greater than or equal to zero and less that or equal to 500.
Accumulator Errors
Negative amount of milk in stomach:
Problem achieved: Your stomach was so empty your cells gave you up. You died.
Over 500L of milk in stomach:
Problem achieved: Your stomach was so filled with milk you exploded. You died.
Syntax errors
Mismatched brackets:
Problem achieved: Your hormones were screwed up and you were diagnosed for diabetes type 2. You died.
Screaming with a stomach value of 350+
Problem achieved: The amplitudes your larynx made were so fat your ears shattered to injure your brain. You died.
Screaming over 10000 times (or any stack overflow error for that matter)
Problem achieved: You screamed so much you forgot how to breath. You died.
Incorrectly closed comments
Problem achieved: Your brain stumbled on a paradox and you fell into a logical black hole. You died.
No input given/EOF given
Problem achieved: You didnt get the milk that dad promised he was getting. You died.
Others
A nasty runtime error would be treated like this:
Problem achieved: Your curfew was so messed up you forgot how to drink milk. You died.
Running out of memory:
Problem achieved: The local hospital ran out of donors for you. You died.
Compiler errors:
Problem achieved: I actually dont know how that happened. You died.
Interpreter
- Common Lisp implementation of the Boring and Idiotic milk supper programming language.