We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.
GTBF
GTBF (Generalized Two-dimensional BitFuck) is a meta-language by User:ChuckEsoteric08 which is a can describe multiple 1-bit Brainfuck derivatives which use binary tape.
Description
It has a binary tape infinite to the right. Program is a 2d grid made out of ASCII characters, on the top of which there are definitions made using a 5-tuplet:
character: (a, b, c, d, e)
In which a is an integer from 0 to 2, b is a signed integer, c is could be 0 or 1, and d and e is an unsigned integer
- If
ais 0 it moves tape pointerbtimes to the right (negative numbers go left and 0 doesn't move it at all) - If
ais 1 it would first flip current cell and then move tape pointer. - If
a2 it would first move the tape pointer and only after that it will flip current cell.
c would check value of the current cell, if it is 0 it will do it before tape pointer moves and / or cell is flipped, if it is 1 it will check after operations are done (if both a and b are 0 or d and e are equal, then it doesn't matter what it would be). d would represent what happens if cell is / was 0, and e if 1. It is encoded as an unsigned integer:
- 0 would not change the direction.
- 1 would turn clockwise.
- 2 would turn counter-clockwise.
- any other integer n would skip next n-2 instructions in the current direction.
Characters that aren't defined are treated as NOPs.
Some examples
2DChanger
}: (1, 1, 0, 0, 0) <: (0, -1, 0, 0, 0) +: (0, 0, 0, 2, 1)
3L
}: (1, 1, 0, 0, 0) <: (0, -1, 1, 2, 1)
Computational class
It is Turing-complete as it can describe a lot of two-dimensional languages which use binary tape infinite to the right.