28 мая 1959 года: изобретая язык для бизнеса

    imageГод 1959: совещание в Пентагоне даёт начало компьютерному языку, который позднее станет известен как «Кобол» (COBOL) и будет основным средством бизнес-вычислений в последующие 40 лет.

    «Кобол», сокращённо от Common Business-Oriented Language (Общий бизнес-ориентированный язык программирования), был одним из первых компьютерных языков. И, наряду с «Фортраном», он был одним из первых языков программирования, основанных на английской лексике.

    «Кобол» обязан своим существованием Грейс Хоппер, одной из первых компьютерных программистов. Грейс делала свои первые программерские шаги в резерве ВМС США, набирая машинный код для компьютера Harvard Mark I в течение Второй Мировой Войны. В конце 1950-х она пришла к мысли, что языки ЭВМ можно было бы сделать похожими на человеческий язык, и тем самым более понятными, чем используемые тогда ассемблер и машинный код.

    Ощущая удачный расклад для создания более доступного и полезного языка программирования для бизнеса, в 1959 году Пентагон собирает несколько рабочих комитетов. В их числе находились представители различных производителей компьютеров, так чтобы этот язык не зависел бы от железной составляющей. Самый продуктивный из комитетов быстро написал начальную спецификацию языка, в качестве отправной точки используя язык Хоппер Flow-Matic, разбавив его идеями, позаимствованными у IBM'овского бизнес-ориентированного языка Comtran.

    К декабрю 1959 года комитет закончил работу над спецификацией языка и назвал его COBOL. Первые компиляторы «Кобола» появились крайне быстро — уже в 1960 году. Язык претерпевал изменения и в 1968 прошёл спецификацию Американского национального института стандартов. «Кобол» казался привлекательным разработчикам бизнес-приложений из-за своей читабельности, доступности и простоте, с которой его можно было использовать для расчёта бизнес-функций. К 1997 году, по оценке Gartner Group, 80 процентов предприятий используют «Кобол», а длина исходного кода всех приложений на «Коболе» в общей сложности составляет 200 миллиардов строк.

    Это наследие превратилось в чудовищное бремя, когда IT-администраторы сделали запоздалое открытие, что конструкция языка «Кобол» подталкивала программистов хранить данные о годе лишь двумя цифрами. Это подтолкнуло страх потенциальных сбоев систем с приходом 2000 года, потому что, к примеру, программное обеспечение внезапно бы начало сообщать возраст кого-то из родившегося в 1959 году, как -59 лет (00-59 = -59), а не 41 (2000-1959 = 41) год. Внезапно тысячи ушедших на пенсию программистов на «Коболе» вернули назад на работу, лишь бы те перепахали старый код и обновили программы, обеспечив их дееспособность после 2000 года.

    Хотя большинство этих программ пережили проблему 2000 года, дела у «Кобола» шли уже не так хорошо. Надо отметить, что он продолжает использоваться во многих местах, особенно на старых мейнфреймах и миникомпьютерах. Экспертный программист Гради Буч в 2003 году сказал журналу Wired, что «даже старая система на „Коболе“ может пустить корни в веб, управляя новым сайтом».

    Теперь уже «Кобол» не является полем для проведения активных исследований и научных работ. Никто не идёт в колледж, планируя изучать язык «Кобол», да и вы скорее всего насмешками будете выгнаны из своего IT-отдела, если предложите следующий проект реализовать на этом языке программирования. Попытка отдельными людьми модернизировать и обновить стандарты «Кобола» была предпринята в начале 2000-х, но эта группа не обновляла свой веб-сайт с 2005 года.

    Для всех намерений и назначений «Кобол» всё меньше годится. Но его существование стимулировало развитие многих других языков программирования высокого уровня, которые используют квази-английский синтаксис (от «Бейсика» до PHP) и дало возможность изучать программирование более широким массам, чем раньше. Эта тенденция, как мы надеемся, никогда не уйдёт из моды.

    Источник: Wired.com
    Поделиться публикацией
    Похожие публикации
    Реклама помогает поддерживать и развивать наши сервисы

    Подробнее
    Реклама
    Комментарии 20
    • +9
      Фотография какбы символизирует кобол.
      • +3
        Это его бабушка — Грейс Хоппер.
        • +6
          Я понял. Скорее мама. И она, по-моему, очень похожа на кобол.
          • –8
            Хочу таких же наркотиков :D
      • +1
        [троллинг]
        Хороший язык. После реализации в нём AJAX и управляемого кода для .NET, он обогнал по удобству C# и java. Жаль, его не взяли вместо javascript в стандарты html…
        [/троллинг]
        • –1
          Это тот самый язык в котором самые громозкие и длинные синтаксические конструкции, что-то типа прототипа современного 1С? Видел я пару примеров кода… не завидую я тем, кому выпала доля поддерживать старый хлам, написанный на нем.
          • +14
                  IDENTIFICATION DIVISION.
                      PROGRAM-ID. HELLO-WORLD.
                   *
                    ENVIRONMENT DIVISION.
                   *
                    DATA DIVISION.
                   *
                    PROCEDURE DIVISION.
                    PARA-1.
            	  DISPLAY "Hello, world.".
                   *
                         EXIT PROGRAM.
                      END PROGRAM HELLO-WORLD.
            
            


            Мне почему-то кажеться что для 1960 года это было не просто круто, а действительно революцией.
            • +1
              Так COBOL скорее всего стал выглядеть в 1968 после прохождения спецификации ANSI, но это всё равно круто — не могу не согласиться.
              • –2
                lisp же уже был тогда и на вид он куда более приятен. Да что там, он до сих пор жив и развивается.
                • +1
                  Тока лисп никогда и никому не был нужен=)

                  А Cobol нужен и даже по сей день есть работающие на нем прожки=)

                  • 0
                    Скажите это тем, кто профессионально занимается автокадом. А так же любому кто работает со Scheme. И да, Столлману тоже можно сказать :D
                  • 0
                    лисп — это сильно заточен под символьную обработку, он явно не годится в качестве бизнес-ориентированного языка (да, я понимаю что микроскопом тоже можно забивать, но все же… :)
                    • –1
                      Но всё равно таки он по дизайну куда удачнее оказался раз до сих пор не выдохся. А Кобол? Ну кто вот на нем осмелится что-то новое начинать писать?
                      • 0
                        Ну я с вами немножко не согласен.

                        Вот был Cobol на нем дофига всего написали. Потом появились лучше языки и начали на них понемногу переходит.

                        А на lisp-е как не было ничего так и не стало и скорее всего не станет.

                        Я бы точно не осмелился на лиспе что-то новое начинать. Слишком трудно на нем писать, да и в придаток дофига круглых скобок, и однообразный код (который из за этого еще более тяжко читается)…

              • +9
                There are only two kinds of programming languages: those people always bitch about and those nobody uses. ©
              • 0
                Поговорим через 20 лет. :)
                • +2
                  вторая Ада Лавлейс
                  • +2
                    Грейс Хоппер в более ранние годы
                    • +2
                      Статья о Коболе на Хабре без единой строчки кода. Сделайте меня развидеть это.

                      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.