


His machine was simulated by Melzac's machine modeling computation via arithmetic (rather than binary logic) mimicking a human operator moving pebbles on an abacus, hence the requirement that all numbers must be positive. He proves the Infinite Abacus can compute any computable recursive function by programming Kleene set of basic μ-recursive function. X- else jump T (decrement X if it is positive else jump to T).The Infinite Abacus: Brainfuck's "grand-parent" language Ī version with explicit memory addressing rather without stack and a conditional jump was introduced by Joachim Lambek in 1961 under the name of the Infinite Abacus, consisting of an infinite number of cells and two instructions: So the first "Brainfuck" programs appear in Böhm's 1964 paper – and they were sufficient to prove Turing completeness. In fact, using six symbols equivalent to the respective Brainfuck commands +, -,, , Böhm provided an explicit program for each of the basic functions that together serve to compute any computable function.

P′′: Brainfuck's formal "parent language" Įxcept for its two I/O commands, Brainfuck is a minor variation of the formal programming language P′′ created by Corrado Böhm in 1964, which in turn is explicitly based on the Turing machine. Īs Aminet grew, the compiler became popular among the Amiga community, and in time it was implemented for other platforms. A second version of the compiler used only 240 bytes. Müller also included an interpreter and some quite elaborate examples. The program came with a "Readme" file, which briefly described the language, and challenged the reader "Who can program anything useful with it? :)". He uploaded the first Brainfuck compiler to Aminet in 1993. Müller's original compiler was implemented in machine language and compiled to a binary with a size of 296 bytes. Müller designed Brainfuck with the goal of implementing the smallest possible compiler, inspired by the 1024-byte compiler for the FALSE programming language. Today, it is the world's largest Amiga archive, known as Aminet. The archive grew more popular, and was soon mirrored around the world. In 1992, Urban Müller, a Swiss physics student, took over a small online archive for Amiga software.
