Ещё 6 языков программирования не на английском: загадочная Азия и нечто совершенно иное
2026-02-21 00:57 Diff

#статьи

  • 15 июл 2021
  • 0

Хотите программировать иероглифами, читать листинг справа налево или вечерами обсуждать свой код с бабушкой Сарой из Одессы? Вам сюда :)

OlyaSnow для Skillbox Media

Журналист, коммерческий автор и редактор. Пишет про IT, цифровой маркетинг и бизнес.
Сайт: darovska.com.

В прошлой статье мы рассказали о программировании на европейских языках: латинском модуле для Perl, эпатажном 1С и других экзотических творениях разработчиков Старого Света.

Теперь пришло время отправиться на Восток. Здесь всё гораздо практичнее — многие языки созданы для решения реальных задач или даже как политическое высказывание в глобальной дискуссии о судьбах человечества.

Mama — учебный язык программирования для разработки игр и 3D-анимации с собственной IDE. Он поддерживает английский, иврит и идиш, а работает только под Windows.

В первых версиях языка дефолтная IDE умела лишь подсвечивать синтаксис, компилировать и отлаживать код, выводить результат исполнения программы. А начиная с версии 1.5 её интегрировали с открытой Alice IDE, которая сильна в 3D-анимации. Поэтому теперь среда платная (здесь вы должны тихонько хихикнуть — ох уж эти национальные стереотипы), но есть и свободный редактор, в котором можно писать простые программы.

Вот так выглядит код для создания графического окна на иврите:

מחלקה תכנית_ציור יורש חלון תגובות ללחיצה על העכבר # מתודה תקנית: תגובה לאירוע לחיצה על מקש העכבר># (x, y)מתודה עכבר_נלחץ צב.מקום(x, y) מתודה תקנית: תגובה לאירוע גרירת העכבר ># (x, y)מתודה עכבר_נגרר צב.אל(x, y) הגדר ת=תכנית_ציור() ># יצירת עצם מהמחלקה של התכנית — גורם ליצירת חלון ולתחילת תגובה לאירועי העכבר

А вот так — на идише:

קלאס צייכענונג_אפ ינכעראץ פענצטער שעפן מויז געשעענישן# מעטאד מויז_געדריקט(אקס, ווי) >#נארמאל מויז געדריקט אופן טשערעפאכע.שטעלע(אקס, ווי) #טשערעפאכע רעפריזענץ דעם איצטיקן פעדער ארט מעטאד מויז_דראגד(אקס, ווי) נארמאל מויז דראגד אופן טשערעפאכע.צו(אקס, ווי) #ציען שורה פון א פאזיציע צו די געגעבן איין דעפינירן אפ=צייכענונג_אפ() #אנהייבן די אפלאקיישאן — שאפן ניו אפלאקיישאן כייפעץ

Пишется название языка так: قلب, а читается как Qalb, Qlb и Alb. С его помощью можно написать программу на арабском.

Qalb разработал в 2012 году учёный и художник Рамси Нассер из технологического центра Eyebeam в Нью-Йорке. Этот язык — ответ на засилье английского в программировании. Вот что говорит об этом сам Рамси:

«Qalb — язык программирования, который исследует роль человеческой культуры в разработке. Он полностью написан на арабском — это призвано подчеркнуть культурные предубеждения в области Computer Science и подвергнуть пересмотру наши представления о программировании.

Основа современных инструментов программирования — ASCII, в котором есть только латинские символы и который изначально создавали на английском языке. В результате программирование плотно привязано к английской письменной культуре. А такая привязка по умолчанию даёт фору людям, которые выросли в этой культуре, читают и пишут на английском».

Вот так изящно и красиво выглядит код «Hello, World!»:

Узнать больше о Qalb можно на сайте Нассера и в его аккаунте на Git.

P. S. Вы только подумайте — ведь это, пожалуй, самый крутой перформанс всех времён и народов! Это вам не пафосная Йоко Оно или какой-нибудь современный художник, прибивающий к мостовой свои гениталии или лающий на посетителей выставки. Рамси положил годы, чтобы создать настоящее произведение искусства и символ борьбы против языкового шовинизма в программировании! Разве это не фантастически прекрасный пример современного искусства?

Система программирования Hindawi (HPS) — набор языков программирования с открытым исходным кодом на хинди. Причём это не какие-то новые языки, а версии BASIC, C, C++, Assembler, Java, переведённые на хинди, гуджаратский и бенгали.

HPS придумали, чтобы обучать программированию индийцев, которые не владеют английским. В своё время система получила награды и разные гранты от правительства — правда, сейчас официальный сайт проекта недоступен, а домен выставлен на продажу. Но это не проблема — в сети ещё остались ресурсы о ведическом программировании. Например, толковый раздел на sourceforge, где можно скачать дистрибутив языка.

Вот как выглядит индийская Java (теперь вы видели всё):

<शैली कृत्रिम> खुला श्रेणी परीक्षण अणु खुला जड़ व्योम मुख्य(माला_श्रेणी तर्क[]) अणु प्रणाली.बाहर.म_लिखो_न("मेरा भारत महान"); पूर्ण पूर्ण

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 — японский язык программирования, который разработали в Осакском университете электросвязи в далёком 1952 году. Название языка — отсылка к персонажу книг Хью Лофтинга, доктору Дулиттлу.

Dolittle напоминает наш Робик: он олдскульный и его тоже создавали для обучения студентов. Бонусом к японскому идут корейская и английская версии. Синтаксис языка основан на японском порядке слов (Subject — Object — Verb) — очень неестественном для английского.

Вот так выглядит программа для перемещения двух объектов:

か め 太 = タ ー ト ル! 作 る。 カ メ = タ ー ト ル! 作 る。 時 計 = タ イ マ ー! 作 る 0,1 秒 間隔 500 回 回 数。 時 計! か め 太! 10 く 行。 左 = ボ タ ン! ”左” 作 る。 左 : 動作 = 「か め 太! 回 り」。 右 = ボ タ ン! ”右” 作 る。 右 : 動作 = 「か め 太! 10 右 回 り」。

Погрузиться в язык можно на официальном сайте.

Var’aq — эзотерический язык программирования. И на нём вполне могли бы программировать клингонцы из вселенной сериала «Звёздный путь».

В отличие от большинства киношных и книжных языков, у клингонского детально проработаны грамматика, синтаксис и лексика. Есть даже вполне реальный Институт клингонского языка — он публикует переводы литературных произведений на клингонский и издаёт научный журнал. На клингонском говорят несколько сотен человек, а придумал его лингвист Марк Окранд — по заказу Paramount Pictures.

«А если у клингонского столько пользователей, почему бы не подарить им свой язык программирования?» — решили Брайен Коннорс и Крис Пресси в 2000 году. Сказано — сделано. Теперь у нас есть Var’aq, и на нём можно программировать.

Язык основан на PostScript и использует Lisp для структур данных. Все ключевые слова, операторы и даже цифры пишутся на клингонском, поэтому, если вы не входите в число той золотой сотни нейтив-спикеров, кодить у вас вряд ли получится. Хотя тот же Python изучают не только носители английского — так почему бы и не попробовать?

Вот так выглядит вывод чисел Фибоначчи на Var’aq:

0 lImoH A cher (* сохраните первые два числа как A и B *) 1 lI'moH B Cher A cha 'B cha' (* выведите первые два числа *) 18 (* повторить 18 раз *) AB boq (* сложите сумму A и B *) latlh (* дублировать результат *) ча '(* напечатайте новое число *) B "A" cher (* магазин B в A *) "B" cher (* сохранить новый номер в B *) } vangqa '(* конец повторения *)

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

Чтобы войти в программирование, рекомендуем начать с более востребованных и практичных языков — на английском. Например, Java или Python. Подходящий курс можно выбрать в разделе «Программирование» на сайте Skillbox.

Бесплатный курс по Python ➞
Мини-курс для новичков и для опытных кодеров. 4 крутых проекта в портфолио, живое общение со спикером. Кликните и узнайте, чему можно научиться на курсе. Смотреть программу