При словосочетании «Ветераны IT» вы наверное представили себе сразу же старичков в пиджаках с нашивками из микросхем и шумным стационаром. Но это не совсем то, что мы подразумеваем под Ветеранами IT.
Cobol *
COmmon Business-Oriented Language
Новости
Взлет и падение языка COBOL. Где и как язык программирования, которому 60 лет, применяется и в наше время?
В 2023 году языку COBOL исполнилось уже 64 года. Это один из старейших языков программирования, которые применяются на практике. Кроме того, он же — один из лидеров по объему написанного кода. Язык не собирается умирать, наоборот, он развивается. Конечно, конкурентом популярным ныне ЯП он не является, причины его популярности в другом. Об этом поговорим под катом.
COBOL: все еще в строю спустя столько лет
Он появился еще в 1959 году и, возможно, выглядит странно по сравнению с современными языками, но COBOL по-прежнему способствует развитию бизнеса, сообщает Майк Бедфорд.
Вслед за недавним обзором нескольких классических языков программирования - большинство из них в значительной степени забыты или являются несколько странными - в прошлом месяце мы погружались в изучение языка Fortran. Несмотря на свой возраст, этот язык по-прежнему хорошо знаком программистам, и, хотя в своем первоначальном виде он был примитивным, назвать его необычным было бы неправильно. На самом деле, он оказал влияние на разработку некоторых наиболее популярных сегодня языков. Мало того, он и сегодня играет важную роль. Однако Fortran не одинок в этом отношении.
Здесь мы рассмотрим еще один древний язык, продолжающий играть ключевую роль во многих областях. И чтобы проиллюстрировать, что этот язык действительно принадлежит к давно ушедшей эпохе, достаточно назвать имена производителей компьютеров, участвовавших в его совместной разработке. Конечно, свою роль сыграла компания IBM, но и Burroughs, Minneapolis-Honeywell, RCA, Sperry-Rand, Sylvania - все эти компании сейчас уже мало кто помнит. Этот язык называется COBOL - COmmon Business Oriented Language - и хотя он всего на два года моложе Fortran, впервые увидевшего свет в 1959 году, в большинстве других аспектов он не может быть более разным.
Освежите ваш COBOL: почему на язык 60-летней выдержки вдруг резко возник спрос?
Давным-давно, когда мир был юн, и компьютеры в нем были в новинку, я учился по программе на младшего сотрудника (Associate Degree) по обработке данных – программ по «компьютерным наукам» тогда не было – и в рамках этой программы преподавались бухгалтерское дело, математика, статистика, а также три языка программирования: ассемблер IBM/360, FORTRAN и COBOL. К 80-м студентам уже рассказывали, что COBOL мертвый язык, и никто его больше не изучают.
Ныне государственные учреждения и банки умоляют прислать им COBOL-щиков, специалистов по языку, который не хочет умирать.
Истории
Язык программирования, который контролирует мировые финансы: 240 миллиардов строк кода на COBOL
Когда Томас впервые начал программировать, это был 1969 год. Он был ребенком, только что окончившим среднюю школу в Торонто, без каких-либо конкретных жизненных целей. Его отец был плотником, но ему не повезло пойти по стопам своей семьи; Томас был неусидчивым. «Мой отец знал, что я не смогу скрепить два куска дерева молотком», — смеется он.
Поэтому его мать предложила что-то странное и новомодное: Как насчет… компьютерного программирования?
В 1969 году компьютеры все еще были странной диковинкой, размером с большой шкаф. Но компании по всему миру понимали, что они бесценны для любых задач, требующих быстрого счета, например, для подсчета заработной платы. Работу предлагали всем, кто мог научиться хоть немного кодировать. Поэтому Томас нашел «какую-то захудалую школу» в центре Торонто и в течение следующих двух месяцев изучал актуальный на тот момент компьютерный язык: COBOL (Common Business-Oriented Language).
После окончания школы его взяли на работу в отдел сортировки чеков крупного канадского банка. (Он не хочет, чтобы я упоминал его название в целях конспирации банка; «Томас», — это псевдоним, если вы еще не догадались). Тогда Томас еще не был программистом в банке, но в течение следующих нескольких лет он дал понять, что хочет им стать, и его работодатель оплатил ему кучу самых настоящих курсов по кодированию в колледже, и в 1978 году он начал долгую карьеру в банке в качестве программиста.
Enterprise COBOL: пример проекта
Эта статья завершает Курс программирования на COBOL, освещая важные аспекты разработки программного обеспечения, такие как модульность кодовой базы, зависимости, модульное тестирование, мокинг, DevOps на z/OS и автодокументация. Современный подход представлен здесь наилучшим образом - на примере.
Enterprise COBOL: реализация библиотеки
Не желаете ли немного COBOL? Вы можете попробовать самостоятельно создать библиотеку на диалекте IBM Enterprise COBOL. Научиться структурировать пакет, управлять его зависимостями, реализовать автоматические тесты на z/OS, разместить в GitHub под контролем Continuous Integration. И, наконец, опубликовать в реестре пакетов.
COBOL — древний код, который управляет вашими деньгами
Язык программирования COBOL старше Игоря Николаева. Люди, умеющие им пользоваться, часто того же возраста. Он лежит в основе целой финансовой системы и его нельзя оттуда убрать. Мы расскажем о том, как компьютерный язык управляет финансовой жизнью мира.
Когда Томас начинал программировать, на дворе стоял 1969 год. Он был обычным парнем, только что выпустившимся из старшей школы в Торонто, не имея особых целей в жизни. Его отец был плотником, но в двери его семьи постучалась удача: оказалось, что руки у Томаса растут не из того места. «Мой отец знал, что я даже не смогу приколотить одну доску к другой», — смеётся он.
Поэтому его мать предложила нечто странное и новомодное: как насчёт… программирования компьютеров?
В 1969 году компьютеры всё ещё были странными новыми диковинками размером с большой шкаф. Но по всему миру компании начали понимать, что эти устройства бесценны для всех задач, требующих мгновенных бухгалтерских расчётов, например, подсчёта зарплат. Вакансии предлагались любому, кто хотя бы немного умел кодить. Поэтому Томас нашёл «небольшую школу-однодневку» в деловом центре Торонто и за следующие два месяца изучил самый популярный на то время компьютерный язык: COBOL (Common Business-Oriented Language).
COBOL и $2 020 202,02
Если вы такое увидите, то (почти наверняка) это ошибка программирования на COBOL. Большинство программистов COBOL совершают эту глупую ошибку, и я не исключение.
Проблема вызвана тем, как именно мы обычно инициализируем запись. Возьмём такую маленькую программу:
История ошибки 2000 года
Именно так ошибку 2000 года восприняло общественное сознание. К примеру, британский политик-брекзитёр заявил, что опасения о влиянии роли Брекзита на экономику похожи на панику бага Y2K.
Об ошибке тысячелетия забыли почти сразу после наступления 2000 года. Даже в непрофильных изданиях месяцами обсуждали баг Y2K, но уже в первые дни нового года внимание к теме угасло. Завораживающая смена числа с 1999 на 2000 не создала катастроф, которыми так пугали. Скептики объявили, что деньги на устранение бага потратили впустую.
Происходящее за кулисами важнее представлений неспециалистов. Градус общественной паники действительно ушёл выше уровня, которого заслуживала ситуация. Реальная опасность компьютерных сбоев по всему миру 1 января 2000 года существовала и требовала вмешательства разработчиков ПО. Целые отделы программистов годами устраняли проблему Y2K.
Путь из COBOL в Java: пишем транспилятор за сутки
Приветствую, Дорогие Друзья.
Продолжаем цикл статей, освещающий деятельность (бурную) нашей некоммерческой организации.
Как и обещал — переходим от простого (логирование) к более сложному: метапрограммирование.
Заложники COBOL и математика. Часть 2
→ Первая часть
Заложники COBOL и математика. Часть 1
Когда речь заходит о языке программирования COBOL — первый вопрос, который всплывает у всех в голове, всегда выглядит так: «Почему человечество всё ещё использует этот язык во множестве жизненно важных областей?». Банки всё ещё пользуются COBOL. Около 7% ВВП США зависит от COBOL в деле обработки платежей от CMS. Налоговая служба США (IRS), как всем хорошо известно, всё ещё использует COBOL. В авиации тоже используется этот язык (отсюда я узнала одну интересную вещь на эту тему: номер бронирования на авиабилетах раньше был обычным указателем). Можно сказать, что множество весьма серьёзных организаций, идёт ли речь о частном или государственном секторе, всё ещё используют COBOL.
→ Вторая часть
Автор материала, первую часть перевода которого мы сегодня публикуем, собирается найти ответ на вопрос о том, почему COBOL, язык, который появился в 1959 году, всё ещё настолько распространён.
Ближайшие события
Если изобрести язык программирования 21 века
Только за последние 18 лет люди придумали множество языков, среди которых, вероятно, самыми популярными стали Swift, Kotlin и Go. При этом отличительная черта языка программирования 21 века — это отсутствие каких-либо отличительных черт. Самое приятное в работе с такими языками — за изучением одного из них можно провести выходные и под конец заявить, что вам удалось освоить популярную новинку, по факту же не узнав ничего нового. В них действительно нет ничего нового. Все современные языки созданы на основе какой-либо правильной и проверенной формулы, имя которой, вероятнее всего, Objective-C, Java или C.
«Отсутствие новизны» можно считать ценной чертой, но подобная ситуация вызывает один вопрос. Действительно ли перед нами языки нового, 21 века, или все это — просто отражение плохих привычек программирования 20 века?
Если бы я изобретал язык, я бы не старался исправить прошлое, а попытался бы создать нечто, что хорошо работало бы именно в условиях современности, но также было способно развиваться и выдерживать проверку временем. Если для этого требуются радикальные конструктивные решения, то так тому и быть.
Долой синтаксис!
Синтаксис современных языков отражает попытку втиснуть свободу мела и доски в оковы ASCII. Некоторые элементы записи, такие как арифметические знаки или скобки, воспринимаются более-менее естественно. Но ряд других обозначений оправдан разве что экономией усилий при нажатии кнопок телетайпа.
Миграция с мэйнфреймов: как убедить руководство?
Если требуется провести модернизацию построенной на базе мэйнфреймов инфраструктуры, на которой в вашей компании работают унаследованные (legacy) приложения, а руководство компании сомневается в необходимости такой модернизации, то следующие аргументы помогут убедить ваше начальство.
COBOL (ч. 4.) – IF и его друзья…
В этот раз мы познакомимся с вкусностями условий (а также получим дополнительный маленький подарок для знаний в конце).
Итак, я думаю все, кто хоть немного интересовался программированием помнят, что есть наверное во всех практически ЯП – такой оператор как IF (Если), есть он конечно же и в COBOL.
Знакомимся с COBOL – ч.3
для DIVIDE.
DIVIDE WS-B BY WS-A GIVING WS-RESULT REMAINDER <переменная>.
Используя REMAINDER мы указываем переменную в которую запишется ОСТАТОК от деления.
Для любых математических операций:
Также, добавляя ROUNDED после операции мы достигаем того, что результат будет округляться, а не просто “отбрасываться” лишний хвост.
ADD WS-A TO WS-B GIVING WS-RESULT ROUNDED.
А теперь продолжим познавать новое. Исполняя обещание развеять удивление о странном выводе значений переменных мы разберем в этот раз PICTURE IS (он же PIC) и форматы переменных.