ГРЕЙС  ХОППЕР  
 

Грейс Мюррей Хоппер

Grace Murray Hopper

09.12.1906 – 01.01.1992

Грейс Мюррей Хоппер родилась в Нью-Йорке 9 декабря 1906 года в семье страхового агента Уолтера Флетчера. С детства она увлекалась не куклами, а различными механическими устройствами –"машинками", как она их называла.

В 1928 году она закончила с отличием колледж Вассара в Пугкигси и продолжила свое образование в Йельском университете. Здесь она в 1930 году получила степень магистра и в 1934 году – доктора философии по математике. Затем, вернувшись в Вассар, она преподавала математику. В 1941 году Г.Хоппер прослушала несколько курсов в университете Нью-Йорка.

В декабре 1943 года, в самый разгар второй мировой войны, она приняла присягу и в мае 1944 года поступила на службу в ВМФ США. Получив в июне 1944 года звание младшего лейтенанта, Грейс Хоппер была включена в отдел ВМФ, который занимался разработкой программ для компьютера ASCC (Mark-1), детища Говарда Айкена.

При работе на компьютере Mark-1 Грейс Хоппер и ее группой впервые были введены некоторые приемы, которые стали в дальнейшем широко использоваться в программистской практике. В частности, первыми инструментами, которые экономили труд программистов, были подпрограммы. Так вот, в августе 1944 года для Mark-1 была написана первая подпрограмма для вычисления sin(x). Термин подпрограммы был введен позже – Англия, Морис Уилкс.

Еще одно фундаментальное понятие техники программирования впервые ввели Грейс Хоппер и ее группа – отладка. Причем случилось это при курьезных обстоятельствах. Жарким летним днем 1945 года неожиданно произошла остановка компьютера. Обнаружилась неисправность одного реле, контакты которого были заблокированы мотыльком, неизвестно каким образом туда попавшим. Вспоминает Грейс Хоппер: "Когда к нам зашел офицер, чтобы узнать, чем мы занимаемся, мы ответили, что очищаем компьютер от насекомых (debuging). Термин debuging (отладка) с тех пор прижился и стал использоваться для обозначения поиска неисправностей в компьютере, особенно в программном обеспечении".

 

 

Злосчастный мотылек - BUG
Злосчастный мотылек - BUG

В 1949 году Грейс Хоппер перешла на работу старшим математиком во вновь образовавшуюся фирму Маучли-Эккперта (создатели электронного компьютера ENIAC), где приняла участие в разработке программных средств коммерческого компьютера UNIVAC-1.

Для облегчения процесса составления программ на машинном языке, вместо записи команд в двоичной системе счисления в то время использовалась восьмеричная система счисления. Грейс Хоппер тоже освоила эту систему: научилась складывать, вычитать, умножать и делить в ней. Однажды даже заполнила баланс своего банковского счета в восьмеричной системе счисления. Выручил брат-банкир, напомнив ей, что банки все-таки работают в десятичной системе счисления. "Я столкнулась с проблемой жизни в двух мирах, - вспоминала Грейс Хоппер, - вероятно, это было одной из причин, побудивших меня по возможности избавиться от восьмеричных чисел".

В 1949 году Джон Моучли создал систему под названием Short Code, которая являлась примитивным языком программирования высокого уровня. В ней программист записывал решаемую задачу в виде математических формул, а затем, используя таблицу перевода символ за символом, преобразовывал эти формулы в двухлитерные коды. В дальнейшем специальная программа компьютера превращала эти коды в двоичный машинный код. Система, разработанная Джоном Маучли, была по существу одним из первых примитивных интерпретаторов, т.е. в последующие годы одним из двух типов трансляторов. Эта система оказала большое влияние на Грейс Хоппер. "Short Code был первым шагом к чему-то такому, что давало программисту возможность писать программы на языке, отличном от машинного", - писала Грейс Хоппер. Второй шаг предстояло сделать ей.

В 1951 году Грейс Хоппер создала первый компилятор и ею же был введен сам этот термин. Компилятор Грейс Хоппер осуществлял функцию объединения и в ходе трансляции производил организацию подпрограмм, выделение памяти компьютера, преобразование команд высокого уровня (в то время псевдокодов) в машинные команды. Конечно, между компилятором, созданным Грейс Хоппер, и сегодняшними сходство небольшое, но начало было положено.

Грейс Мюррей Хоппер
Грейс Хоппер

Свой первый компилятор Грейс Хоппер назвала А-0, затем по мере его расширения и улучшения в последующие годы появились его версии А-1, А-2, А-3.

В 1954 году группа под руководством Грейс Хоппер разработала систему АТ-3, включающую язык программирования и компилятор, которая в дальнейшем получила название MATH-MATIC и продавалась компанией Remington Rand вместе с компьютером UNIVAC-1.

Грейс Мюррей Хоппер, 1957

Грейс Хоппер, 1957 год

Приступив к созданию нового языка и компилятора, Грейс Хоппер со своей группой, выбрали около 30 английских слов типа: add (сложить), compare (сравнить), transfer (переслать) и т.п., а затем разработали компилятор, который транслировал программы, написанные на этом языке, в машинный код.
Для адекватного распознания компилятором выбранных слов Грейс Хоппер придумала способ, который сохранился в операторах будущих языков: каждое слово (название оператора) содержит неповторимую комбинацию из первой и третьей букв, поэтому компилятор при генерации машинного кода может игнорировать все остальные буквы в слове. Создание "необычного" (по тем временам) языка и компилятора, который получил название В-0, было завершено в 1956 году. В 1958 году система В-0 поступила на рынок под новым названием FLOW-MATIC. В отличие от ФОРТРАНа – языка для научных приложений, FLOW-MATIC был первым языком для задач обработки коммерческих данных.

Создание универсального, машинно-независимого языка высокого уровня для деловых применений и бизнеса стало очередной задачей, за разрешение которой в начале 1959 года взялась энергичная Грейс Хоппер. Она обратилась за поддержкой в Министерство обороны США, которое вскоре организовало конференцию по языкам программирования. Эта конференция, получившая в дальнейшем название CODASYL (Conference on Data Systems Language), организовала три группы по разработке нового универсального языка. К осени 1959 года создание языка было завершено, и он получил имя COBOL (Common Business Oriented Language). Одним из основных консультантов при создании языка была Грейс Мюррей Хоппер.

В 1967 году Хоппер вернулась на действительную службу в ВМФ и к 1980 году стала капитаном Управления вычислительной техники в Вашингтоне. В 1983 году она получила звание капитана первого ранга, а в ноябре 1985 года – звание контр-адмирала. В 1982-1986 годах она была старейшим действующим офицером американской армии. После отставки из армии в 1986 году она еще некоторое время работала консультантом фирмы DEC.

В 1967 году Хоппер вернулась на действительную службу в ВМФ и к 1980 году стала капитаном Управления вычислительной техники в Вашингтоне. В 1983 году она получила звание капитана первого ранга, а в ноябре 1985 года – звание контр-адмирала. В 1982-1986 годах она была старейшим действующим офицером американской армии. После отставки из армии в 1986 году она еще некоторое время работала консультантом фирмы DEC.

Заслуги Грейс Хоппер в программировании оценены по достоинству. Более 40 университетов и колледжей присвоили ей различные звания. Грейс Хоппер была обладательницей первой награды по информатике "Человек года", присуждаемой Ассоциацией управления и обработки данных.

А.П.Частиков История информатики в лицах: Грейс Мюррей Хоппер, М:Информатика и образование, 1995-3

 

Hosted by uCoz