1. Экономическая война
  2. Развитие IT-технологий
Москва, / ИА Красная Весна

Интенсивное программирование. Язык «Тривиль» создан за рекордный срок

Иван Айвазовский. Хаос. Сотворение мира (фрагмент). 1841
Иван Айвазовский. Хаос. Сотворение мира (фрагмент). 1841

Рабочий вариант языка программирования «Тривиль» для разработки компиляторов создан за 38 рабочих дней в течение девяти календарных месяцев, заявил кандидат физико-математических наук Алексей Недоря 7 января в статье «Разработка языка Тривиль. Часть 4. Реализация» в журнале «Цифровая экономика».

Скорость разработки подтверждает эффективность принципа упрощения, когда отказ от несущественных деталей делает «невозможные» вещи выполнимыми.

«Меньше чем за 9 календарных месяцев (с 20.11.2022 по 09.09.2023 — прим. ИА Красная Весна), минимальными усилиями (8 часов в неделю), написаны два компилятора, среда исполнения и библиотеки, суммарно 25 тысяч строк на трех языках программирования (Go, „Тривиль“, C99 — прим. ИА Красная Весна). На мой взгляд, это существенное подтверждение мысли, что упрощение работает и делает невозможные вещи не просто возможными, а обозримыми и выполнимыми», — написал Недоря.

Для сравнения автор привел сроки разработки от ее начала до выхода в свет первой версии таких промышленных языков программирования как Go — около 5 лет, Swift — около 4, Kotlin — около 6. Он уточнил, что данная статистика может вызвать ощущение, что разработка языка малыми усилиями и в короткое время невозможна, и что для промышленных языков это так. При их создании приходится учитывать множество конфликтующих требований, включая требования совместимости со старым кодом и другими языками, которые поступают от разных заинтересованных сторон, дополнил исследователь.

«Ситуация существенно меняется, если речь идет об исследовательской работе, в рамках которой можно сконцентрироваться на главном, отбросить второстепенное и приложить максимальные усилия к упрощению языка и инструментов», — написал автор «Тривиля».

Он уточнил, что для широкого или коммерческого применения языка «Тривиль» «надо еще много сделать», подчеркнув, что уже реализованное является не прототипом на выброс, а рабочим продуктом, который решает поставленные задачи.

Язык программирования «Тривиль» задуман как инструмент для разработки компиляторов и используется для создания следующих языков семейства — «Арс» и «Арвиль», сообщил Недоря. Также в 2023–2024 учебном году язык использован в университете Иннополиса для обучения студентов, которые в рамках курса по разработке компиляторов реализовали генерацию кода для «Тривиля» в промышленные платформы выполнения LLVM IR, JVM и .NET.

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

В статье «Интенсивное программирование» 2022 года ученый отметил, что под этим подходом он понимает наращивание эффективности IT-отрасли за счет перехода к более современным технологиям создания программ в противовес к «экстенсивному» ее развитию за счет увеличения числа программистов и доступных для них и их программ вычислительных ресурсов. В том числе, предложенный подход нацелен на реализацию идей советского ученого, пионера теоретического и системного программирования Андрея Ершова, который видел в переводе на промышленные рельсы повторного использования готовых программных компонентов (сборочное и конкретизирующее программирование) одно из ключевых направлений для развития отрасли.

Эксперт написал, что «интенсивное программирование» актуально для России, в том числе потому, что часть программистов уехала из страны после эскалации конфликта с Западом на Украине. Также вероятна ситуация, когда западные компании, например Intel, перестанут поставлять России микропроцессоры, тогда остро встанет вопрос импортозамещения в том числе в сфере инструментальных программ; при решении этой задачи возможность «сделать существенный рывок вперед» может дать упрощение новых отечественных продуктов за счет отказа от «старого мусора», отметил он. По оценке исследователя, «отбрасывание старого может упростить разработку нового в десятки и сотни раз».

Алексей Недоря — эксперт в области разработки языков программирования и компиляторов. Научную карьеру начал в группе разработчиков советских 32-битных компьютеров «Кронос» при Вычислительном центре Сибирского отделения (СО) Академии наук СССР, был основным создателем операционной системы (ОС) Excelsior для машин «Кронос» и нескольких компиляторов с языка «Модула-2». В 1991 году по приглашению автора языков программирования «Паскаль», «Модула-2» и «Оберон» Никлауса Вирта прошел двухнедельную стажировку в Швейцарской высшей технической школе Цюриха (ETHZ).

В 1991–1994 гг. работал над многоцелевой системой программирования с языками «Модула-2» и «Оберон-2» и системами генерации программного кода для бортовых космических комплексов. В 1994 году защитил кандидатскую диссертацию «Расширяемая переносимая система программирования, основанная на биязыковом подходе» в институте Систем информатики имени А. П. Ершова Сибирского отделения (СО) Российской академии наук (РАН).

С 2001 года Недоря ведет исследовательскую работу по созданию нового инструментария программирования.

Комментарии
И

Ингар 18:20 12.01.25

1. Код языка программирования "Тривиль" - https://gitflic.ru/project/alekseinedoria/trivil-0 ;

2. Телеграм-канал "Ворчалки о программировании" автора "Тривиль" Алексея Недоря - https://t.me/vorchalki_o_prog .

Позиция редакции ИА Красная Весна может не совпадать с позицией авторов комментариев. Редакция запрещает использование в комментариях мата, оскорблений и грубости. Недопустимостимы экстремистские высказывыания, а также иные сообщения, нарушающие закон Российской Федерации.
Обсудить в комментариях