Ещё 6 языков программирования не на английском: загадочная Азия и нечто совершенно иное
Хотите программировать иероглифами, читать листинг справа налево или вечерами обсуждать свой код с бабушкой Сарой из Одессы? Вам сюда :)
OlyaSnow для Skillbox Media
В прошлой статье мы рассказали о программировании на европейских языках: латинском модуле для Perl, эпатажном 1С и других экзотических творениях разработчиков Старого Света.
Теперь пришло время отправиться на Восток. Здесь всё гораздо практичнее — многие языки созданы для решения реальных задач или даже как политическое высказывание в глобальной дискуссии о судьбах человечества.
Ивритская Mama
Mama — учебный язык программирования для разработки игр и 3D-анимации с собственной IDE. Он поддерживает английский, иврит и идиш, а работает только под Windows.
В первых версиях языка дефолтная IDE умела лишь подсвечивать синтаксис, компилировать и отлаживать код, выводить результат исполнения программы. А начиная с версии 1.5 её интегрировали с открытой Alice IDE, которая сильна в 3D-анимации. Поэтому теперь среда платная (здесь вы должны тихонько хихикнуть — ох уж эти национальные стереотипы), но есть и свободный редактор, в котором можно писать простые программы.
Вот так выглядит код для создания графического окна на иврите:
А вот так — на идише:
Арабский Qalb
Пишется название языка так: قلب, а читается как Qalb, Qlb и Alb. С его помощью можно написать программу на арабском.
Qalb разработал в 2012 году учёный и художник Рамси Нассер из технологического центра Eyebeam в Нью-Йорке. Этот язык — ответ на засилье английского в программировании. Вот что говорит об этом сам Рамси:
«Qalb — язык программирования, который исследует роль человеческой культуры в разработке. Он полностью написан на арабском — это призвано подчеркнуть культурные предубеждения в области Computer Science и подвергнуть пересмотру наши представления о программировании.
Основа современных инструментов программирования — ASCII, в котором есть только латинские символы и который изначально создавали на английском языке. В результате программирование плотно привязано к английской письменной культуре. А такая привязка по умолчанию даёт фору людям, которые выросли в этой культуре, читают и пишут на английском».
Вот так изящно и красиво выглядит код «Hello, World!»:
Узнать больше о Qalb можно на сайте Нассера и в его аккаунте на Git.
P. S. Вы только подумайте — ведь это, пожалуй, самый крутой перформанс всех времён и народов! Это вам не пафосная Йоко Оно или какой-нибудь современный художник, прибивающий к мостовой свои гениталии или лающий на посетителей выставки. Рамси положил годы, чтобы создать настоящее произведение искусства и символ борьбы против языкового шовинизма в программировании! Разве это не фантастически прекрасный пример современного искусства?
Индийская Hindawi Programming System
Система программирования Hindawi (HPS) — набор языков программирования с открытым исходным кодом на хинди. Причём это не какие-то новые языки, а версии BASIC, C, C++, Assembler, Java, переведённые на хинди, гуджаратский и бенгали.
HPS придумали, чтобы обучать программированию индийцев, которые не владеют английским. В своё время система получила награды и разные гранты от правительства — правда, сейчас официальный сайт проекта недоступен, а домен выставлен на продажу. Но это не проблема — в сети ещё остались ресурсы о ведическом программировании. Например, толковый раздел на sourceforge, где можно скачать дистрибутив языка.
Вот как выглядит индийская Java (теперь вы видели всё):
Китайский Easy Programming Language (EPL)
EPL — китайский объектно-ориентированный язык программирования со своей средой разработки. Он поддерживает две версии китайского — упрощённый и традиционный, а также английский и японский языки. У самого EPL три форка: Yi language, Feiyang и Yilegu — каждый из них идёт в комплекте со своими инструментами и IDE. Преимущество EPL — кроссплатформенность: он работает и на Windows, и на Linux. Синтаксис списан с Visual Basic.
У EPL есть интересные фишки, которые делают его конкурентоспособным в Поднебесной:
- Определения программ, объявления переменных и констант, системные вызовы API заполняются в формах, поэтому запоминать синтаксические конструкции не нужно.
- В сообществе доступно множество свободных модулей, поэтому разработка на EPL идёт довольно быстро.
- В языке много локализованных функций, актуальных для Китая: лунный календарь, обработка китайского произношения и китайских символов.
Но есть и недостатки: код не получится поправить в стороннем редакторе — работать можно только в фирменной IDE, а компиляция — платная. К тому же стандартная библиотека довольно редко обновляется.
Конечно же, большинство китайских программистов используют обычные языки программирования: Java, C++, PHP, Python и другие. Но на EPL всё-таки пишут настоящие программы — например, считается, что именно на нём написано множество китайских хакерских инструментов.
Хотя это можно объяснить и недоработками самого языка: антивирусы частенько ругаются на любое ПО, написанное на EPL. Разработчики пытались это исправить, но пока не преуспели.
Так выглядит вывод «Hello, World!»:
А так — рабочее окно программиста в официальной IDE:
У EPL есть и свой сайт — но он, конечно же, на китайском.
Японский Dolittle
Dolittle — японский язык программирования, который разработали в Осакском университете электросвязи в далёком 1952 году. Название языка — отсылка к персонажу книг Хью Лофтинга, доктору Дулиттлу.
Dolittle напоминает наш Робик: он олдскульный и его тоже создавали для обучения студентов. Бонусом к японскому идут корейская и английская версии. Синтаксис языка основан на японском порядке слов (Subject — Object — Verb) — очень неестественном для английского.
Вот так выглядит программа для перемещения двух объектов:
Погрузиться в язык можно на официальном сайте.
Клингонский Var’aq
Var’aq — эзотерический язык программирования. И на нём вполне могли бы программировать клингонцы из вселенной сериала «Звёздный путь».
В отличие от большинства киношных и книжных языков, у клингонского детально проработаны грамматика, синтаксис и лексика. Есть даже вполне реальный Институт клингонского языка — он публикует переводы литературных произведений на клингонский и издаёт научный журнал. На клингонском говорят несколько сотен человек, а придумал его лингвист Марк Окранд — по заказу Paramount Pictures.
«А если у клингонского столько пользователей, почему бы не подарить им свой язык программирования?» — решили Брайен Коннорс и Крис Пресси в 2000 году. Сказано — сделано. Теперь у нас есть Var’aq, и на нём можно программировать.
Язык основан на PostScript и использует Lisp для структур данных. Все ключевые слова, операторы и даже цифры пишутся на клингонском, поэтому, если вы не входите в число той золотой сотни нейтив-спикеров, кодить у вас вряд ли получится. Хотя тот же Python изучают не только носители английского — так почему бы и не попробовать?
Вот так выглядит вывод чисел Фибоначчи на Var’aq:
К сожалению, официальный сайт языка и ссылки на сопроводительную документацию не работают. Но вы можете изучить спецификацию в других источниках.