12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- The language syntax consists of the following commands:
- setchar c - sets the value in the current cell to c
- walk n - go to n cells
- change v - change the value in the current cell to v (integer)
- mov n - move the value of the current cell to n cells
- copy n t - copy the value of the current cell to the cell located n cells from the current
- using a buffer located across t cells from the current
- print n - print cell values from the current to the next through n cells
- split v - split string v into characters and distribute them in the following cells
- alias name value - create an alias with the name 'name' and the value 'value'
- $name - get the value from the alias name
- pointer name n - create a pointer to cell n
- &name = c - set the value of the cell at address name to 'c'
- &name clear - clear cell at address name
- &name add v - increase the value in the cell at the address name by v
- &name sub v - decrease the value in the cell at the address name by v
- array name n l - create a pointer to cells from n to n + l
- @name n = c - set the value of the cell at the address name[n] to 'c'
- @name n clear - clear cell at name[n]
- @name n add v - increase the value in the cell at the address name[n] by v
- @name n sub v - decrease the value in the cell at the address name[n] by v
- putchar - output a character from the current cell
- read - read one character from standard input
- reads n - read characters from standard input and distribute them in cells from the current to the next through n cells
- sum * a * b * c - add the values of cells a and b, and add the result to cell c (in theory, you can use this
- function in the form of sum * a * b * a, but I'm not sure if this will work)
- sub * a * b * c - similar to sum, but here subtraction
- * a - access to the pointer
- # - comment
- A program consists of calls to certain commands with their arguments. Between them should be separators:
- '(', ')', ',', ' ', and ';'. They can be used to improve code readability.
- For example:
- split "Hello world!\n";
- equals to
- split("Hello world!\n")
- Please note that there are no name conflicts between pointers and aliases, as they
- stored differently
- eg:
- alias hw "Hello, World!"; # Create hw alias
- pointer hw 1; # Create hw pointer
- split $ hw; # Split the string stored in PSEUDONYM hw
- & hw = c; # Set the value of 'c' to the cell BY ADDRESS hw
|