Esolang created for the Twist YSWS program.
The grammar is limited to one character:
- "f": Function
- "c": Call Function
- "l": Loop
- "b": Break
- "r": Return
- "o": Output
- "i": Input
- "a": Assign
Comparison and arithmetic operators are available. However, there are no numbers allowed in literals. Or capital letters. Or any other symbols. Just a-z. If you try to perform comparison or arithmetic, the two strings you pass are interpreted as bijective base-26 numbers. The operations you perform are done on the base-26 representation of the string.
Some operations can be chained.
- Assign Output (ao) assigns a value to a variable then also output's that value.
- Input Output (io) takes in a value and immediately calls output on it.
There are two projects in this repository, a web REPL to test Piko and the library itself.
cargo build --workspace
You can try it out here. Might not be available forever, though.
This project requires Rust 1.85.1 or later.