Brainfuck interpreter written in C.
brainfuck [-veh] file...
-e --eval run code directly
-v --version show version information
-h --help show a help message.
The interactive console can be accessed by passing no arguments.
We also provide a C api:
#include <stdio.h>
#include <stdlib.h>
#include <brainfuck.h>
int main() {
BrainfuckState *state = brainfuck_state();
BrainfuckExecutionContext *context = brainfuck_context(BRAINFUCK_TAPE_SIZE);
BrainfuckInstruction *instruction = brainfuck_parse_string(",+++++.");
brainfuck_add(state, instruction);
brainfuck_execute(state->root, context);
brainfuck_destroy_context(context);
brainfuck_destroy_state(state);
return EXIT_SUCCESS;
}
Look in the examples
directory for a large amount of brainfuck examples.
Download the source code by running the following code in your command prompt:
$ git clone https://github.com/fabianishere/brainfuck.git
or simply grab a copy of the source code as a Zip file.
Create the build directory.
$ mkdir build
$ cd build
Brainfuck requires CMake and a C compiler (e.g. Clang or GCC) in order to run. It also depends on libedit, which is avialable in the main repositories of most Linux distributions (e.g. as libedit-dev on Debian) and comes with the macOS XCode command line tools. Then, simply create the Makefiles:
$ cmake ..
and finally, build it using the building system you chose (e.g. Make):
$ make
See LICENSE file.
Fabian Mastenbroek https://github.com/fabianishere
aliclubb https://github.com/aliclubb
diekmann https://github.com/diekmann
SevenBits https://github.com/SevenBits
Alex Burka https://github.com/durka
outis https://github.com/outis
rien333 https://github.com/rien333