Wasm
Jump to navigation
Jump to search
Paradigm(s) | imperative |
---|---|
Designed by | User:jan Gamecuber |
Appeared in | 2022 |
Memory system | tape |
Computational class | Turing complete |
Reference implementation | Unimplemented |
Influenced by | brainfuck, Assembly languages |
File extension(s) |
WASM, an acronym for Worst ASseMbly is a Turing-complete brainfuck derivative made by jan Gamecuber to be a semi-realistic assembly language that still sucks to program in. This language uses a theoretically infinite tape of unbounded integers to store data.
Commands
Bytecode | Name | Function |
---|---|---|
0000 or 0 | Right | Move the data pointer right 1. |
0001 or 1 | Left | Move the data pointer left 1. |
0010 or 2 | Inc | Increment the current cell. |
0011 or 3 | Dec | Decrement the current cell. |
0100 or 4 | OutUnicode | Output the current cell as unicode. |
0101 or 5 | InUnicode | Take 1 char input and store it's unicode value in the current cell. |
0110 or 6 | While | While the current cell is not 0 |
0111 or 7 | EndWhile | Close the while block. |
1000 or 8 | Right6 | Move the data pointer right 6. |
1001 or 9 | Left6 | Move the data pointer left 6. |
1010 or A | Inc6 | Increment the current cell by 6. |
1011 or B | Dec6 | Decrement the current cell by 6. |
1100 or C | OutNum | Output the current cell as a number. |
1101 or D | InNum | Take input and store it in the current cell. |
1110 or E | If | If the current cell is not 0 |
1111 or F | EndWhile | Close the if block. |
This language is turing complete, as the first 8 commands are the same as in brainfuck.