Пользователь
0,0
рейтинг
28 мая 2010 в 12:17

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
Максим Мельников @BBSoD
карма
233,5
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое

Комментарии (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-е как не было ничего так и не стало и скорее всего не станет.

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

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

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