Бессмертный cobol: почему язык программирования из 50-х никак не умрёт

Оказывается, программистов на COBOL так сильно не хватает, что скоро компании пойдут за сеньорами в дома престарелых.

Что такое Кобол и чем он знаменит

Изображение: кадр из четвёртого эпизода серии «Звёздные войны»

COBOL — это сокращение от COmmon Business Oriented Language.

Первая его версия вышла в далёком 1959 году, когда даже не было персональных компьютеров. Язык использовался для программного обеспечения на мэйнфреймах — больших и мощных компьютерах. Программисты писали на Кобол, чтобы гибко управлять памятью и эффективно выделять ресурсы каждой программе.

COBOL — процедурный и императивный язык высокого уровня, а с 2002 года стал ещё и объектно-ориентированным. Некоторые считают его также предметно-ориентированным языком, то есть предназначенным для специфических областей бизнес-программирования.

Почему его используют

Первая причина. COBOL проводит десятичные вычисления с фиксированной точкой — в отличие от современных языков, где используют плавающую. Это значительно влияет на точность расчётов.

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

Вторая причина. Количество памяти, что выделяется под переменные, не зависит от компилятора и архитектуры. COBOL-код работает одинаково на 8- и 64-битных системах. Например, тот же C++ имеет для каждого типа только минимальный размер.

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

Как выглядит COBOL

Язык, помимо своей точности в вычислениях, славится большим количеством зарезервированных слов. У него их 100 штук! В то же время у Java в 20-й версии всего 53.

Обратите внимание: Почему на самом деле королева Елизавета наказывала придворных за браки.

Но все эти слова в нём не просто так.

Американский учёный и военный Грейс Хоппер, она же прародитель COBOL, считала, что язык должны понимать все, особенно управленцы.

Давайте сравним две программы на Fortran и COBOL:

Программа для подсчёта социальных выплат на FortranПрограмма для подсчёта социальных выплат на COBOL

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

Такая подробность имеет и обратную сторону — слишком много слов. Но давайте попробуем вывести традиционное «Hello, world!» на Коболе и Python:

«Привет, мир!» на COBOL«Привет, мир!» на Python

Почему COBOL считают плохим

Первая причина — он очень старый. Кобол считался древним ещё в 1980-е, не говоря уже про 2022-й. Даже Дейкстра однажды заявил: «COBOL калечит ум, поэтому обучение этому языку должно наказываться по закону».

Кобол лишён многих привычных вещей — например, динамической памяти и стандартных методов операционных систем. Многие версии языка и вовсе не имеют рекурсии.

Несмотря на недостатки, Кобол всё ещё применяют, потому что переписывать системы на современные языки — это дорого. Например, Австралийский банк Содружества однажды решился на такой шаг и потратил 750 млн долларов и пять лет работы.

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

***

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

#люди_и_код #язык программирования #IT #история IT #программирование

Еще по теме здесь: История.

Источник: Бессмертный cobol: почему язык программирования из 50-х никак не умрёт.