Найти тему
Люди и код

Программируем… цветом. Язык Piet: пиксель-арт вместо for и when

Оглавление

Кодинг цветовой палитрой — это не шутка. Рассказываем про эзотерический язык Piet, который похож на абстрактные картины Пита Мондриана.

Эзотерические языки программирования создают, чтобы исследовать синтаксис. Или ради шутки. Они специфичны, часто годятся только для общего применения и понятны исключительно автору, но изучать и исследовать их — приятная разминка для мозга. В прошлой статье мы остановились на литературном языке Shakespeare, а сейчас покажем графический Piet.

Как работает Piet

Piet состоит из программы, памяти и указателя инструкций. Программа выглядит как картинка, в которой вместо команд-символов используют цветные пиксели. Единица программы — это блоки, в которых пиксели одного цвета связаны между собой.

В таблице представлено 18 цветов, но кроме них в Piet можно использовать чёрный и белый Источник: progopedia.ru
В таблице представлено 18 цветов, но кроме них в Piet можно использовать чёрный и белый Источник: progopedia.ru

Память работает только с целыми числами и организована в виде стека. Указатель инструкций читает программу блоками так, как укажет программист. Что интересно, компилятор не обращает внимания на ошибки, поэтому можно написать что угодно.

Кодить в Piet — это находить изящные визуальные решения. Вот, например, три варианта “Hello, World!”.

“Hello, World” от Дэвида Морган-Мара, Мэтта Рудари и Томаса Шоха  Источник: dangermouse.net
“Hello, World” от Дэвида Морган-Мара, Мэтта Рудари и Томаса Шоха Источник: dangermouse.net

Piet вдохновляет людей. Например, юный поклонник программирования попросил отца распечатать код “Hello, World!”, а Джек Андерсон сделал кодер и декодер на чековой ленте.

Счастливый обладатель картины и кодер на чековой ленте Источник: dangermouse.net
Счастливый обладатель картины и кодер на чековой ленте Источник: dangermouse.net

Piet — язык не для практических задач, а для творчества. Написать изящный код и повесить его на стену — бесценно.

Ромуло Джовелли создал “Hello, World” c помощью трёх оттенков одной палитры. Источник: dangermouse.net
Ромуло Джовелли создал “Hello, World” c помощью трёх оттенков одной палитры. Источник: dangermouse.net

Кто придумал Piet

Язык Piet невозможно воспринимать без его создателя — Дэвида Морган-Мара. Этот австралийский физик не только занимается наукой, но и выпускает веб-комиксы, которые высмеивают поп-культуру, пишет инструкции к настольным RPG и статьи в игровые журналы.

Кроме того, Дэвид увлекается разработкой юмористических языков программирования. Он сделал не только Piet, но и ещё с десяток других. Например, диалект языка Brainfuck Ook!, где все команды — это вариации слова «окей», и Chef, который шифрует код под рецепты.

В следующих статьях мы продолжим рассказывать про другие языки программирования и интересные факты. Подписывайтесь, чтобы не пропустить!

***

Чтобы не пропустить другие материалы о программировании, об истории IT и искусственном интеллекте, подпишитесь на канал. Ставьте лайки, чтобы видеть больше таких статей у себя в ленте. Если вы хотите, чтобы мы написали о каком-то факте или технологии, предложите свою тему в комментариях к этой или другим статьям.

#люди_и_код #технологии #it #программирование