Derpodce has five commands.
||Flip the current bit.|
||Increment the pointer.|
||Decrement the pointer.|
||Set an ASCII character from stdin and store it in the current bit and the next seven bits.|
||Write the current bit and the next seven bits to stdout as an ASCII character.|
All non-command symbols are ignored. Additionally, the two punctuation commands are ignored unless preceded by either another command or a whitespace character.
The tape is left-ended, and initializes with all zero-valued cells. A
tape[-1] cell exists to index the last cell of the tape (as in Python).
A Derpodce program is terminated by flipping the 0 cell, decrementing the pointer into the -1 cell, and executing the print command. The last line of all derpcode programs is therefore
preh pred-a! In any other context, non-incrementing commands are ignored while on the -1 cell, so it's best not to go there.