Chips › Processors › Esoteric & theoretical › Brainfuck machine
Brainfuck machine
1993
Minimalist esoteric programming language with just eight commands operating on a simple memory-tape machine.
Brainfuck machine Online Emulator
Play Brainfuck machine using JavaScript directly in your browser.
Controls
Runs the loaded Brainfuck program and animates the memory tape, pointer and output. Open the debugger (or add ?debug) to pause, single-step one executed instruction at a time and read the tape; Reboot re-runs the program from the start. The default "Hello World!" takes no input (Brainfuck reads input only via the `,` command).
Configurations
| Configuration | Emulator | Machine | OS | Legal | |
|---|---|---|---|---|---|
| Hello World! | Brainfuck Visualizer | Brainfuck machine | open | Open ⛶ |
Downloads - ROMs & software
| Title | Type | Size (bytes) | Legal | |
|---|---|---|---|---|
| Hello World! | demo | 457 | open | Download ↓ |
Machines
Emulators
| Emulator | Type | License | Site |
|---|---|---|---|
| Brainfuck Visualizer | online | MIT | Website ↗ |
Reference & documentation
External technical references for programming Brainfuck machine and for writing emulators.
| Resource | Type | Notes |
|---|---|---|
| Brainfuck - Esolang Wiki ↗ | Instruction set | Canonical spec: 8 commands, cell model, EOF variants |
| BrainSTARK Part II: Formal Brainfuck machine ↗ | Memory map | ip/dp registers, memory tape, state transition table |
| Brainfuck algorithms - Esolang Wiki ↗ | Programming | Idioms: clear, copy, multiply, if/else, divmod |
| Brainfuck constants - Esolang Wiki ↗ | Programming | Shortest command sequences to generate integer constants |
| Brainfuck - Wikipedia ↗ | Reference | History, command table, commented Hello World example |
| The Brainfuck Programming Language (Muppetlabs) ↗ | Source | Original distribution hub, compilers, sample programs |
| rdebath/Brainfuck (bitwidth.b torture test) ↗ | Test suite | Torture test validating cell width and wrapping |
| Optimizing brainfuck compiler (Nayuki) ↗ | Tool | Source-to-source compiler with IR optimizations |