К началу1 Введение
Представьте себе одномерную полосу с данными, например, магнитную ленту (классические машины Тьюринга работают с лентой) или компьютерную память. Для обозначения текущей ячейки используется указатель данных (магнитная головка). Каждая такая ячейка хранит один байт (значение от 0 до 255), слово (16 бит) или 24 бита данных. Автор предпочитает называть указатель курсором, однако, я своевольно оставлю его привычное название (прим. пер.)
Brainfuck - это минималистичный язык программирования, работающий с такой “лентой” в памяти, и состоящий лишь из восьми операндов. Несмотря на это он является Тьюринг-полным, что теоретически позволяет производить любые вычисления как, например, в языках Basic или C. Автор составил данное руководство из найденных им материалов по Brainfuck. Большинство текстов и кода позаимствовано у разных людей с указанием источников.
1.1.1 Авторские права
При цитировании были сохранены лицензии на распространение использованных текстов. Данный документ опубликован под лицензией GFDL.
2 Краткая история Brainfuck[wikipedia]
Исключая две команды ввода-вывода, Brainfuck является полным преемником языка
P′′, созданного Коррадо Бомом в 1964 году. Он также использовал шесть символов, эквивалентных соответствующим командам Brainfuck: +, -, <, >, [ и ]. Бом описал ряд программ, реализующих основные математические функции, поэтому, формально, первые программы на Brainfuck были написаны Бомом на бумаге в 1964 году, и уже тогда была доказана полнота языка по Тьюрингу.
Создавая Brainfuck в 1993 году Урбан Мюллер стремился разработать язык с компилятором как можно меньшего размера, вдохновившись таковым у FALSE - тот умещался в 1024 байта. На данный момент существуют компиляторы Brainfuck размером менее 200 байт.
Далее:
Основы языка: 8 команд Brainfuck