Generic 2D Brainfuck

From Esolang
Jump to: navigation, search
Generic 2D Brainfuck
Paradigm(s) imperative, multi-dimensional
Designed by User:Hppavilion1
Appeared in 2015
Memory system tape-based (2d)
Dimensions two-dimensional
Computational class Turing complete
Major implementations None Yet
Influenced by Brainfuck
File extension(s) .2b


Generic 2D Brainfuck is a language created in 2015 by User:Hppavilion1. It is, as the name suggests, a generic 2-Dimensional brainfuck-based language. It operates on both a 2-Dimensional variant of Brainfuck's tape as well as using a 2-Dimensional program.

Language Overview

Generic 2D Brainfuck is basically just brainfuck, but the program and tape are 2D. The way it is designed makes it entirely backwards-compatible with vanilla brainfuck (except for comment conflicts). The commands are as such:

Command Description
> Move the pointer to the right
< Move the pointer to the left
^ Move the pointer upwards
v Move the pointer downwards
u Set the program counter direction to up
d Set the program counter direction to down
l Set the program counter direction to left
r Set the program counter direction to right
+ Increment the memory cell under the pointer
- Decrement the memory cell under the pointer
. Output the character signified by the cell at the pointer
, Input a character and store it in the cell at the pointer
[ Jump past the matching ] (following the program counter direction) if the cell under the pointer is 0
] Jump back to the matching [ (following the program counter direction) if the cell under the pointer is nonzero

History

Generic 2D Brainfuck was created by Hppavilion1 in 2015. There hasn't been much time for history to be made.

Examples

As Generic 2D Brainfuck is almost backwards-compatible with Brainfuck, many examples can be found on the normal brainfuck page (but only one-line examples will work)