CelseeLang
Paradigm(s) | imperative |
---|---|
Designed by | Alluseri |
Appeared in | 2022(Celsee: 2019) |
Type system | Queue-based |
Memory system | Cell-based |
Dimensions | one-dimensional |
Computational class | Unknown |
Reference implementation | Celsee |
Major implementations | CelseeLang |
Dialects | CelseeLang(2022), Celsee(2019) |
Influenced | this |
File extension(s) | .cee |
CelseeLang is a rework of Celsee made by Alluseri.
Overview
All commands/instructions are hexadecimal integers from 0 to C and $.
The original purpose of this language was to execute randomly generated numbers and (hopefully) receive some input.
Execution starts at index 0.
The effective difference between Celsee(Lang) and this is the inability to directly use values under 0 or over 9.
Instructions
Instruction | Description |
---|---|
0 | None |
1E | Jump to execution index at E ENV support: Yes(E) |
2ABC | If ENV == A, jump to B, otherwise, jump to C ENV support: Yes(ABC) |
3ABC | If ENV != A, jump to B, otherwise, jump to C ENV support: Yes(ABC) |
4 | Increase ENV by 1 |
5 | Decrease ENV by 1 |
6E | Set ENV to E ENV support: Yes(E) |
7 | Print ENV |
8 | Print ENV + next line |
9 | Print character at ENV |
A | Print character at ENV + new line |
BE | Increase ENV by E ENV support: Yes(E) |
CE | Decrease ENV by E ENV support: Yes(E) |
$ | ENV. If used outside of instruction arguments, executes the instruction within ENV parsed a hex character(e.g. ENV = 10, instruction: A). UNSAFE OPERATION! |
Examples
Hello, world!
Traditionally(as per Alluseri's languages), all (known) implementations of Hello world will be shown here. The idea is to print 0123456789, since the language doesn't direct support characters.
The Basic
74747474747474747474
The Best
394874107
Wait, that's illegal
6947
You can output values less than 0 and higher than 9 using ENV.
"Self-modifying code"
67$
The code will set ENV to 7 and execute the instruction within ENV(7), which causes it to print "7", which is the value of ENV.