Снимки экрана

Описание

Брейнфак — один из известнейших эзотерических языков программирования, придуман Урбаном Мюллером (нем. Urban Müller) в 1993 году, известен своим минимализмом. Название языка можно перевести на русский как вынос мозга, оно напрямую образовано от английского выражения Брейнфак, т. е. заниматься ерундой. Язык имеет восемь команд, каждая из которых записывается одним символом. Исходный код программы на Брейнфак представляет собой последовательность этих символов без какого-либо дополнительного синтаксиса.

Одним из мотивов Урбана Мюллера было создание языка с как можно меньшим компилятором. Отчасти он был вдохновлён языком FALSE, для которого существовал компилятор размером 1024 байта. Существуют компиляторы языка Брейнфак размером меньше 200 байт. Программы на языке Брейнфак писать сложно, за что его иногда называют языком для мазохистов. Но при этом важно отметить, что Брейнфак является вполне естественным, полным и простым языком и может использоваться при определении понятия вычислимости.

Машина, которой управляют команды Брейнфак, состоит из упорядоченного набора ячеек и указателя текущей ячейки, напоминая ленту и головку машины Тьюринга. Кроме того, подразумевается устройство общения с внешним миром (см. команды . и ,) через поток ввода и поток вывода.

Несмотря на внешнюю примитивность, Брейнфак с бесконечным набором ячеек имеет тьюринговскую полноту, а, следовательно, по потенциальным возможностям не уступает «настоящим» языкам, подобным Си, Паскалю или Java.

Брейнфак подходит для экспериментов по генетическому программированию из-за простоты синтаксиса, и, соответственно, генерации исходного кода.

В «классическом» Брейнфак, описанном Мюллером, размер ячейки — один байт, количество ячеек 30 000. В начальном состоянии указатель находится в крайней левой позиции, а все ячейки заполнены нулями. Увеличение/уменьшение значений ячеек происходит по модулю 256. Ввод-вывод также происходит побайтно, с учётом кодировки ASCII (то есть в результате операции ввода (,) символ 1 будет записан в текущую ячейку как число 0x31 (49), а операция вывода (.), совершённая над ячейкой, содержащей 0x41 (65), напечатает латинскую А). В других вариантах языка размер и количество ячеек может быть другим (бОльшим). Есть версии, где значение ячеек не целочисленно (с плавающей точкой).

Политика конфиденциальности: https://static.macflash.ru/PRIVACY_POLICY_RU
Условия соглашения: https://static.macflash.ru/TERMS_OF_USE_RU

Что нового

Версия 2.5

Scheduled library updates

Оценки и отзывы

4,5 из 5
Оценок: 2

Оценок: 2

Straf Attack ,

Looks swell, but..?

The app looks and runs brilliantly, I really dig the UI. However, I have been unable to find out how to run the code I write, and there is no help section for how to use the app it seems. Please, how do I run the code I have written? Also, it would be nice if there was an enter key so code could be formatted nicer across multiple lines. With these features (being able to run code + having a hard return key) is easily rate this app a 5/5.

Ответ разработчика ,

Please check new version and write me from application.

Dmc75002 ,

Finally a BF interpreter for the iPad!

I thought I was going to have to make myself. I will suggest a few things on the developer website. Fantastic start!

dmc75287 ,

Need time

You're going to have to 30 seconds to evaluate. Until then-delete.

Конфиденциальность приложения

Разработчик macflash.ru указал, что в соответствии с политикой конфиденциальности приложения данные могут обрабатываться так, как описано ниже. Подробные сведения доступны в политике конфиденциальности разработчика.

Не связанные с пользова­телем данные

Может вестись сбор следующих данных, которые не связаны с личностью пользователя:

  • Покупки

Конфиденциальные данные могут использоваться по-разному в зависимости от вашего возраста, задействованных функций или других факторов. Подробнее

Поддерживается

  • Семейный доступ

    С помощью семейного доступа приложением смогут пользоваться до шести участников «Семьи».

Другие приложения этого разработчика

Образ жизни
Утилиты
Утилиты
Утилиты
Развлечения
Игры

Вам может понравиться

Инструменты разработчика
Инструменты разработчика
Инструменты разработчика
Инструменты разработчика
Инструменты разработчика
Инструменты разработчика