🖥️ Перший компілятор 📘 COBOL 🐛 «Баг» і дебагінг
1906 — 1992

Грейс Хоппер

«Найнебезпечніша фраза мовою — це "ми завжди так робили"» — Грейс Хоппер
A-0
Перший компілятор
1959
COBOL
1947
Історія з «багом»
1906–1992
Роки життя
Rear Admiral
Звання ВМС США
Ключова ідея Хоппер — концепція компілятора
Символьний код (людська мова) → КОМПІЛЯТОР → машинний код
Замість того щоб програмісти писали інструкції безпосередньо машинною мовою, програма-компілятор сама перекладає зрозумілі людині слова та вирази у двійкові команди процесора
Компілятор A-0 (поч. 1950-х)
SUBROUTINE(код) → машинні інструкції
Один із перших компіляторів: перекладав символьні позначення математичних підпрограм у машинний код, автоматизуючи повторне складання програм.
Мова, близька до англійської
FLOW-MATIC → COBOL
Хоппер довела, що команди можна записувати словами на кшталт «MOVE», «READ», «WRITE» — компілятор сам перекладе їх у код процесора.
Незалежність від машини
один код → декілька архітектур
Хоппер відстоювала ідею мов, не прив'язаних до конкретного комп'ютера — основа переносних (portable) мов програмування.
Дебагінг (1947)
знайти й усунути помилку («bug»)
Команда Хоппер задокументувала й популяризувала використання слів «bug» і «debugging» у контексті пошуку несправностей у комп'ютері.
💡 Компілятор — головна ідея Хоппер

До початку 1950-х програмісти писали програми безпосередньо машинною або асемблерною мовою — довго, складно і схильно до помилок.

Хоппер розробила компілятор A-0 — програму, яка перекладала символьний код (посилання на вже готові математичні підпрограми) у машинні інструкції автоматично. Це заклало основу для мов програмування вищого рівня, зрозумілих людині.

Пізніше вона поширила цю ідею на діловий код: розробила компілятор FLOW-MATIC, що використовував слова англійської мови — прямий попередник мови COBOL (1959), однієї з перших мов, орієнтованих на бізнес-задачі.

Ідея компілятора Хоппер (спрощено): ЛЮДИНА ПИШЕ: MOVE BALANCE TO TOTAL ADD PAYMENT TO TOTAL IF TOTAL > LIMIT GOTO OVERDRAFT КОМПІЛЯТОР ПЕРЕКЛАДАЄ: → машинний (двійковий) код процесора Раніше програміст мусив писати машинний код вручну. Компілятор A-0 автоматизував цей переклад.
🔬 Відкриття та внески
Поч. 1950-х — компілятор A-0
Один із перших компіляторів
Перекладав символьний математичний код у машинні інструкції — заклав основу мов програмування високого рівня.
1959 — COBOL
Ключовий внесок у створення COBOL
Ідеї та компілятор FLOW-MATIC Хоппер стали фундаментом для Common Business-Oriented Language — мови для бізнес-застосунків.
1947 — «Перший реальний баг»
Популяризація термінів «баг» і «дебагінг»
Команда Хоппер знайшла метелика в реле Harvard Mark II і задокументувала це як «перший реальний випадок знайденого бага» — журнал зберігається в Смітсонівському інституті. Сам термін «bug» існував і раніше, але саме цей епізод закріпив вислів у комп'ютерній культурі.
1944–1949 — Harvard Mark I / II
Служба у ВМС і робота над Mark I
Приєдналася до резерву ВМС США, стала однією з перших програмісток комп'ютера Harvard Mark I у Гарвардському обчислювальному центрі.
1950–1980-ті
Пропаганда машинно-незалежних мов
Відстоювала ідею, що програми мають писатися мовою, незалежною від конкретної апаратної архітектури — принцип, що ліг в основу пізніших переносних мов програмування.
🕐 Хронологія
1906
Народилась Грейс Брюстер Мюррей у Нью-Йорку, США.
1934
Здобула ступінь доктора філософії з математики в Єльському університеті.
1943
Під час Другої світової війни приєднується до резерву ВМС США (WAVES).
1944
Направлена в Гарвардський обчислювальний центр, працює над комп'ютером Harvard Mark I.
1947
Команда фіксує знайденого метелика в реле Harvard Mark II — задокументований епізод з «першим реальним багом».
Поч. 1950-х
Розробляє компілятор A-0 — один із перших компіляторів у світі.
1959
Бере участь у розробці мови COBOL, спираючись на власний компілятор FLOW-MATIC.
1986
Виходить у відставку з ВМС США у званні контр-адмірала (Rear Admiral).
1992
Помирає у віці 85 років.
2016
Посмертно нагороджена Президентською медаллю Свободи.
📜 Цитати та спадщина
Про мови програмування
«Слова простіші за числа»
Хоппер вірила, що програмісти мають писати команди словами, близькими до людської мови, а не машинними кодами — ідея, що визначила розвиток мов високого рівня.
Grace Hopper Celebration
Найбільша конференція жінок у технологіях
Щорічна конференція Grace Hopper Celebration of Women in Computing названа на її честь і вшановує внесок жінок у комп'ютерні науки.
❓ Часті запитання про Грейс Хоппер

Відповіді на найпоширеніші питання про піонерку комп'ютерного програмування.

Хто така Грейс Хоппер? +

Грейс Хоппер (1906–1992) — американська математикиня, одна з перших програмісток комп'ютера Harvard Mark I, розробниця першого компілятора A-0 та учасниця створення мови програмування COBOL. Вона також служила у ВМС США і вийшла у відставку в званні контр-адмірала — рідкісний випадок для жінки-науковця її покоління. У 2016 р. посмертно нагороджена Президентською медаллю Свободи.

Що таке компілятор і чому робота Хоппер була проривною? +

Компілятор — це програма, що перекладає код, написаний людиною у зрозумілішій формі, у машинний код, який виконує процесор. До Хоппер програмісти писали інструкції безпосередньо машинною або асемблерною мовою. Її компілятор A-0 (початок 1950-х) автоматизував переклад символьного математичного коду в машинні команди. Ідея, що програмувати можна словами, близькими до англійської, а не бінарним кодом, лягла в основу всіх сучасних мов програмування високого рівня.

Чи справді Грейс Хоппер вигадала слово «баг»? +

Ні, не зовсім. У 1947 р. команда Хоппер знайшла в реле комп'ютера Harvard Mark II справжнього метелика, який спричинив несправність; вони вклеїли його в робочий журнал з підписом «перший реальний випадок знайденого баг(a)». Ця подія реальна й задокументована — журнал і метелик зберігаються у Смітсонівському інституті. Але слово «bug» на позначення технічної несправності використовувалося інженерами й до цього випадку. Заслуга Хоппер — вона задокументувала й активно популяризувала цей конкретний епізод, завдяки чому терміни «баг» і «дебагінг» закріпилися в комп'ютерній культурі.

Який зв'язок Грейс Хоппер із мовою COBOL? +

Грейс Хоппер не була єдиним автором COBOL (Common Business-Oriented Language, 1959), але її ідеї та компілятор FLOW-MATIC, розроблений раніше, стали основою для цієї мови. Вона активно відстоювала концепцію мов програмування, схожих на англійську, придатних для бізнес-задач, і її вплив на робочу групу, що створювала COBOL, був визначальним. COBOL став однією з перших масово вживаних мов високого рівня для комерційних застосунків.

Яка була військова кар'єра Грейс Хоппер? +

Хоппер приєдналася до резерву ВМС США під час Другої світової війни і працювала над комп'ютером Harvard Mark I у Гарвардському обчислювальному центрі. Вона продовжувала службу у ВМС протягом десятиліть, зокрема відповідала за стандартизацію мов програмування для військових систем, і вийшла у відставку в 1986 р. у званні контр-адмірала — на момент відставки була однією з найстарших за віком дійових офіцерів ВМС США.

Внесок у науку

Цей вчений залишив глибокий слід у розвитку науки та технологій. На цій сторінці зібрані ключові відкриття, цитати та концепції, пов'язані з його науковою спадщиною.

Цей піонер інформатики заклав теоретичні або практичні основи обчислень, що використовуються у кожному процесорі та програмі сьогодні.

Чому важливо знати цього вченого

Розуміння внеску видатних вчених допомагає зрозуміти логіку розвитку науки. Їхні методи мислення, підходи до проблем і наукова стійкість — безцінний приклад для кожного дослідника і студента.