zenonet

SusLang

SusLang is an among-us-themed esoterical programming language I created for fun in 2022.

The base idea is that every crewmate (addressed by its color) is a variable (1 byte unsigned integer) representing how suspicious (sus) that crewmate is.
The susness-value can be modified by saying things about the actions of these crewmates.

The language interpreter is written in C# and the source code (and builds (including hosted online interpreters)) are available on github.


// increment cyan
cyan vented

// decrement cyan
cyan wasWithMe

// increase cyan by 10
cyan killed

// decrease cyan by 10
cyan didVisual

Then, the value of a crewmate can be outputted either as a number using report or as an ASCII character using emergencyMeeting:

// Output cyan's value as a number
report cyan

// Output blue's value as an ASCII character
emergencyMeeting blue

As you can see, the emergencyMeeting statement looks a bit sus syntactically. This is because it was originally a parameterless statement (and optionally still is!) that outputs the value of the selected crewmate.

// Select blue for further investigation
sus blue
// Call in an emergencyMeeting (output the value as an ASCII character)
emergencyMeeting

There are even loops, very simmilar to brainfuck loops. Any code in square brackets just runs until the selected crewmate turns 0.

The following code iterates through 10 to 1:

sus yellow
yellow killed
[
    report // report doesn't need yellow as an argument here because it's selected anyway
    yellow wasWithMe
]

SusLang's Syntax has a little bit more to offer that I won't cover here. If you're interested, consider reading the complete syntax documentation on github.