Definition
Brainfuck is an esoteric programming language created in 1993 by Swiss student Urban Müller. It consists of exactly eight commands, each represented by a single character: > < + - . , [ ]. The language is Turing-complete — meaning it can theoretically compute anything a modern computer can — but deliberately stripped of every convenience: no variables, no functions, no comments, no syntax highlighting, no error messages. Writing in Brainfuck is programming reduced to its absolute essence, then made deliberately painful.
Why it matters
Brainfuck matters because it is a joke that became a serious object of study. It was designed to challenge the Turing completeness threshold with the smallest possible compiler — Müller’s original implementation was only 296 bytes. In the decades since, it has become a rite of passage for programmers, a teaching tool for understanding how computers actually work at the memory level, and a competitive sport: programmers compete to write the shortest, most elegant, or most perverse Brainfuck programs. It is also a philosophical statement: if a language this minimal can do anything, what is the point of all the complexity in modern software?
Example
A simple Brainfuck program that prints “Hello World!” requires dozens of lines of plus signs, brackets, and pointers. Reading it is like reading a punched tape from 1960. Writing it is like navigating a maze while blindfolded. That is the Brainfuck experience.
Internet Angle
Brainfuck is a staple of programming forums, hacker culture, and coding interview folklore. It appears in jokes about job interviews (“We use Brainfuck in production”), in esolang communities that design ever more perverse languages, and in educational contexts where stripping away abstraction reveals the underlying mechanics of computation. The language has also inspired countless derivatives: Brainfuck with emoji commands, Brainfuck that compiles to DNA sequences, Brainfuck implemented in Minecraft.
Related Terms
- Esoteric programming language — a language designed for experimentation rather than practical use
- Turing-complete — capable of simulating any Turing machine, given enough time and memory
- Compiler — a program that translates code into executable instructions
- Memory pointer — the core concept that Brainfuck exposes directly to the programmer
- Code golf — the sport of writing the shortest possible program for a given task
- Assembly language — low-level programming that Brainfuck resembles
- Esolang — the community and genre of esoteric programming languages