Специалисты по COBOL теперь не нужны? Появился свободный компилятор, который снижает потребность в разработчиках

Не так давно мы писали о том, что один из старейших языков программирования COBOL, похоже, вскоре уйдёт с рынка. И не потому, что он неактуален, наоборот, пока что этот язык востребован, главным образом в финансовой и банковской отраслях. Всё дело в том, что ему ищут замену, точнее, способ, который позволит портировать софт, написанный на COBOL, на разные ЯП. Ранее этим занималась корпорация IBM, но теперь появились и другие возможности. В частности, свободный компилятор GnuCOBOL.

cb57c0f619398a587691fdcceee61dbb.jpg

Что это за проект?

Как и говорилось выше, он называется GnuCOBOL. Команда развивала его около 20 лет, не так чтобы быстро, но всё же постоянно что-то добавляла и модифицировала. Сейчас GnuCOBOL уже можно использовать в промышленности и банковской отрасли, где, собственно, и задействован софт, написанный на COBOL.

Компилятор позволяет крупным и не очень компаниям постепенно снижать зависимость от языка, которому исполнилось уже полвека. По словам разработчиков, главное достоинство GnuCOBOL — трансляция написанной на COBOL программы в представление на языке С для дальнейшей компиляции при помощи компилятора С.

У проекта, помимо бесплатности, есть ещё одно достоинство — его можно использовать в среде разных операционных систем, включая Windows, macOS, Linux, Android, BSD и другие. Важный момент: COBOL вовсе не находится в том виде, в котором он появился, язык развивается. На сегодня насчитывается пара десятков версий, «диалектов», и с большинством из них умеет работать компилятор.

5f832b7cd4fc5b59a70e63bac24c9e64.png

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

В качестве интересного кейса можно привести и Министерство финансов Франции — ведомство отказалось от старого парка серверов и даже от мейнфрейма (о них мы недавно писали), предпочтя новое оборудование и GnuCOBOL. Всё потому, что переход на GnuCOBOL позволяет добиться повышения производительности и избавиться от привязки к одному поставщику.

Из связанных с GnuCOBOL событий также можно упомянуть публикацию первой версии интегрированной среды разработки SuperBOL Studio, написанной на языке Ocaml. Она распространяется под лицензиями AGPLv3, MIT и ISC. SuperBOL Studio представляет собой расширение к редактору кода VS Code, которое работает с GnuCOBOL. Предназначено оно главным образом для разработки, отладки и профилирования проектов на языке COBOL. SuperBOL также предоставляет реализацию сервера LSP (Language Server Protocol) для интеграции в друге IDE средств навигации, анализа и редактирования кода на языке COBOL.

Кстати, есть ещё один проект — от IBM. Корпорация разработала специальный набор инструментов по автоматическому преобразованию кода COBOL в код на Java. И это не теоретическая разработка, не proof of concept, а коммерческий инструмент, который предлагается партнёрам компании. Называется он Watsonx Code Assistant.

Код, который создаётся при помощи Watsonx Code Assistant, не станет конфликтовать с остальными системами, даже если они и устаревшие. Код объектно ориентированный, а значит будет поддерживаться совместимость как с модулями, написанными на COBOL, так и с сервисами вроде CICS, IMS, DB2.

А что с самим языком программирования?

COBOL уже больше 60 лет. Несмотря на это, он до сих пор активно используется. Конечно, в подавляющем большинстве сфер его заменили современные языки программирования. Но дело в том, что в ряде стран до сих пор работают аппаратные системы с ПО на базе этого ЯП. Особенно много их в США.

Поэтому COBOL держится на плаву и в последние несколько лет даже набирал популярность. Так, например, в августе 2023 года язык вышел на 15 место по популярности среди ЯП. Год назад он находился на 31 месте. Впечатляющий рост. Но через время, возможно, он станет уже историей.

Вот инфографика от 2017 года, созданная в рамках исследования Reuters. Конечно, прошло 7 лет, но вряд ли все эти организации и системы разом перешли на новые языки — уж слишком это дорого. Кто-то да, но большинство предпочло новому хорошо работающее и проверенное временем старое.

5210c6e0b466675c38106de275ab05f4.png

Проблема в том, что систем, которые написаны на старом языке, ещё много, а вот программистов, хорошо в них разбирающихся и способных что-то писать на COBOL, совсем крохи. И большинству из них около 60–70 лет. Поэтому компаниям приходится искать специалистов по всему миру.

Сейчас, надо думать, зависимость от языка будет понемногу снижаться, поскольку инструментов для перехода на другие ЯП становится всё больше. Вероятно, осталось подождать 3–5 лет, но кто знает, может, и больше.

© Habrahabr.ru