Swapfuck

Swapfuck is a derivative of brainfuck by User:Rdococ, which shares some similarities with boolfuck.

Differences from brainfuck

 * Input is loaded into the tape at the beginning of execution, as opposed to having an instruction to retrieve for an input character.
 * Cells are single bits - they can only hold two values, a 0 or a 1.
 * Rather than having an instruction to toggle the current cell value, the language offers a 'swap' instruction which is described with more detail below.
 * A register - named the 'SWAP register' - is used to store a pointer to the cell to be swapped.
 * An output queue is used to store the current number of output bits until it reaches a size of 8 bits, and then the contents of the queue are emptied and printed as a single character.