Рождённые хаосом: как вавилонское смешение компьютеров создало программирование?

1950-е стали эпохой взрывного роста вычислительной техники. Армии уникальных машин — ENIAC, EDVAC, ORDVAC — требовали столь же уникальных способов общения. Инженер Саул Горн, работая в Баллистической исследовательской лаборатории армии США над сложными расчетами и обучением студентов в 1951 году, столкнулся с кошмаром: каждая ЭВМ понимала только свой собственный набор команд. Подготовка специалистов превращалась в сизифов труд.
Рождённые хаосом: как вавилонское смешение компьютеров создало программирование?
Изображение носит иллюстративный характер

Проблема Горна была универсальной. Развивающаяся индустрия умножала разнообразие систем. Как утверждают историки Давид Нофре, Марк Пристли и Джерард Альбертс, этот хаос заставил осмыслить программирование как «язык». Основа общения с машиной — бинарный код (единицы и нули), управляющий электрическими импульсами «железа». Но инженерам требовались понятные им средства, которые затем компилировались в машинный язык.

Грейс Хоппер, контр-адмирал ВМС США и пионер компьютерных наук, наглядно показала решение в 1954 году. Она представила компилятор для компьютера UNIVAC как робота-переводчика: с «языка, удобного для написания» на «язык, понятный машине». Однако вместо порядка возник новый Вавилон. Горн, наблюдая лавину языков, предупреждал о «вычислительной Вавилонской башне».

Мечта о едином языке охватила индустрию и оборону. Джон Вебер Карр из Мичиганского университета, сотрудничая с ВВС США над управляемыми ракетами, искал универсальное решение. Ответом стали пользовательские группы. Первые из них, например USE (Univac Scientific Exchange), возникли в 1955 году, объединив специалистов ВВС США, Lockheed и Boeing. Они делились программами и методиками, стремясь создать общий язык.

Активную поддержку таким группам оказали военные США. Их усилия кристаллизовались в 1959 году в КОБОЛ (Common Business-Oriented Language). Как отмечают Нофре с соавторами, цель КОБОЛ была прагматичной: «сократить расходы на поддержку растущего разнообразия компьютерных систем».

Мечта о единственном универсальном языке рухнула. КОБОЛ стал лишь одним из многих. Для научных задач параллельно создавался АЛГОЛ (Algorithmic Language). Их революционное качество — машинная независимость. Теперь код работал на разных компьютерах, а программисты могли рассуждать об алгоритмах абстрактно.

Язык из метафоры превратился в формальную модель. Прорыв случился в 1960 году с новой версией АЛГОЛ-60. Историки подчеркивают: его синтаксис и семантика были выстроены «в манере, напоминающей модель формального языка Рудольфа Карнапа». Это создало инструментарий для изучения «самих алгоритмов и языков программирования», заложив фундамент компьютерной науки. Хаос первых ЭВМ породил стройную дисциплину.


Новое на сайте

20868Уязвимости Plex открыли путь майнерам и Linux-бэкдору 20867Взлом OpenCode Console: под угрозой могли оказаться ключи OpenAI, Anthropic и Google 20866Rank Math PRO: заражённое обновление оставило на сайтах самовосстанавливающийся бэкдор 20865Как исследовательские модели OpenAI обходили ограничения и присваивали чужие данные 20864Атака на BeyondTrust: шпионская группа получила доступ к серверам поддержки 20863Как пакет imgdecode превращает npm-зависимость в загрузчик вредоносного кода? 20862Как PEERSTITCH обходит проверки VPN-сессий FortiOS? 20861Что происходит, когда ИИ-агент выходит за пределы тестовой среды? 20860Как 37-летняя ошибка открыла путь к root в OpenBSD 7.9? 20859ИИ-модели для SOC: точный ответ зависит от улик 20858Как одна учётная запись ConnectWise открыла доступ к 173 арендаторам Microsoft 365? 20857Пять минут до заражения: как подменили обновления AOMEI Backupper 20856Ловушка под видом регистрации: как UAT-11985 крадёт аккаунты Google 20855Может ли виртуальная машина прочитать память хоста? 20854Как дешёвые Android-смартфоны превращаются в чужие прокси?
Ссылка