Top.Mail.Ru

Язык программирования Brainfuck

Brainfuck — это совсем не ругательство, как может показаться с первого взгляда,
ведь все мы можем перевести это слово с английского. Брейнфак — это один из
очень экзотических и даже эзотерических языков программирования, применение
которых бессмысленно, но которые имеет право на существование.
Всего за всю историю программирования было разработано около 9000 языков
программирования! И это не шутка и не преувеличенное число! Сейчас иметь свой
собственный язык программирования — это приличный тон успешной компании,
поэтому их так и много. Но брейнфак — это один из языков, которые были
придуманы без практического применения, а просто, чтобы что-то доказать или
сделать. Конкретная цель этого языка — это сделать с мозгами программиста то, что
описывает его название.

Брейнфак

Брейнфак был разработан в 1993-м году программистом Urban Müller. С тех пор,
язык не приобрел никаких изменений и до сих пор сохранился в авторской версии.
Он не имеет коммерческой ценности и не применяется в разработке. Везде, где его
можно заметить — это какая-то любительская организация небольшой
бессмысленной программы каким-нибудь программистом-мазохистом.
Но несмотря на собственную бессмысленность, брейнфак был создан не просто так.
Авторская цель была не просто заставить программистов ломать свой мозг, а
создать язык с самым «маленьким» компилятором в мире. Вес авторского
компилятора был всего 240 байт, чуть позже, другим программистам удалось
уменьшить вес компилятора до 200 байт. Цель была достигнута — языка с еще
меньшим компилятором не существует и по сей день. Но это не придает этому языку
никакой профессиональной ценности.

Brainfuck как язык программирования

Брейнфак — это язык-парадокс. С одной стороны — в практике, он нигде не
применяется из-за своеобразного синтаксиса и сложности в программировании и
любая даже очень мелкая программа — это «взрыв мозга» для любого
программиста, а с другой стороны — в теории, этот язык способен выполнять любую
поставленную задачу.
Брейнфак состоит всего из 8 операторов:

  1. «+» – увеличивает на единицу значение в текущей ячейке;
  2. «-» – уменьшает на единицу значение ячейки;
  3. «>» – сдвигает данные на одну 1 ячейку вправо;
  4. «<» – сдвигает данные на 1 ячейку влево;
  5. «[» – начинает цикл;
  6. «]» – оканчивает цикл;
  7. «.» – выводит значение ячейки в качестве символа ASCII;
  8. «,» – читает символы потоков ввода и сохраняет их в ячейке как символ ASCII.

Все остальные символы, кроме перечисленных, попадают в «комментарии», поэтому
не обрабатываются компилятором.

Примеры программ на Brainfuck

Программы на языке программирования Брейнфак имеют довольно интересный вид,
поэтому не всегда понятны многим программистам. Вот несколько примеров
простейших программ:

  1. «+++++[-]». Этот скрипт увеличивает заданное значение на 5, а потом
    открыли цикл, который будет уменьшать значение до 0.
  2. «>>>>++<<+>>+». Этот скрипт записывает 2 в ячейку №4, потом 1 записали в
    ячейку №2, а потом сложили 1 и 4.
  3. «++++++++++[>++++ +++>++++++++++> +++>+<<<<-]>++.>+.+++++++..+++.
    >++.<<+++++++++++++++.>.+++.——. ——–.>+.>»
    А это одна из версий как
    написать, известную всем начинающим программистам, фразу «Привет, мир!».

Кстати, «Привет, мир!», можно записать в нескольких вариантах и это на одном и том
же языке. Представьте, если захотите писать что-то сложнее, чем «Привет, мир!»

Возможно вам будет интересно почитать статью “Как могут взломать или как защитить почту Gmail”

Итог

Брейнфак никогда не был конкурентом ни одному из существующих языков. Хотя, как
уже говорилось, что теоретически, на нем можно написать любую программу. Многие
программисты пытались понять и изучить этот язык — это реально. Но, по их же
отзывам, изучать его для серьезного применения нет смысла, так как на написание
чего-либо стоящего уйдет уйма времени и энергии. А если поразвлечься и
потренировать собственные мозги, то это самое то!

Text.ru - 100.00%
Поделись статьей с друзьями!

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *