iag supplies an unbounded number of memory cells initialized to zero. Each cell holds a 32-bit signed integer. There is also an accumulator register, which holds a 32-bit signed integer as well. Looping is performed with the
| command and an accompanying stack.
||Move memory pointer to the left.|
|=||Subtract contents of this memory cell from accumulator, storing the result in both this memory cell and the accumulator, then move memory pointer to the right.|
||If accumulator is|
||read a character from stdin to active memory cell (|
||print a character to stdout from active memory cell.|
||set accumulator to |
||return to the |
|Panu's interpreter also offers the following, presumably not part of the language proper:|
||Dump memory cells for debugging.|
||End the program.|
|| === =<=< <<<=== =<=< <= ==== |<|<|<|<|<|<|<| ds
Reads eight characters of input, storing them in reverse order in the first eight memory cells.
= || ==<<==== =<=< <= =<=< <<<<<=<==== | <= <<= <<== <<= <<== <<= |
Prints all characters 0 to 256 (starting with 1) endlessly.