Женщина, день рождения которой отмечается как Международный день программистов.

pic

Более 190 лет назад, 10 декабря 1815-го года, у лорда и леди Байрон родилась девочка, которую назвали Августа Ада.

Леди Августа Ада Байрон (в замужестве Кинг) была дочерью великого английского поэта лорда Байрона. Однако, отец видел свою единственную законную дочь всего один раз. Через месяц после ее рождения были подписаны документы о разводе, и Джордж Гордон Байрон навсегда покинул Англию.

Мать Ады увлекалась математикой. Аналитические способности она хотела отыскать и в собственной дочери, всеми силами ограждая ее от рокового романтического влияния «беглого» отца.

Августа Ада Байрон получила образование, занимаясь с частными преподавателями, а затем самостоятельно, в чем ей помогал Август Де Морган, первый профессор математики Лондонского университета. В 1835 году Ада вышла замуж за барона Уильяма Кинга, а когда он получил титул графа в 1838 году, стала графиней Лавлейс.

В 1822 г., англичанин Чарлз Бэббидж занялся разработкой машины под названием Difference Engine — громадного и чрезвычайно сложного арифмометра. Вскоре этот проект был остановлен, т.к.: в 1833 г. математик задумал еще более революционный шаг — заставить машину работать под управлением внешней программы.

Уже в 1833 году леди Аду Байрон-Кинг заинтересовала аналитическая машина Бэббиджа. Она приложила все свои способности для реализации его проекта, поддерживала и вдохновляла его.

Агрегат под названием Analytical Engine разрабатывался Чарлзом Бэббиджем на бумаге с 1834 г. Проект Аналитической машины — механической универсальной цифровой вычислительной машины с программным управлением Чарлз Бэббидж разрабатывал с 1830 по1846 годы. Машина включала в себя пять устройств — арифметическое АУ, запоминающее ЗУ, управления, ввода, вывода (как и первые ЭВМ появившиеся 100 лет спустя). АУ строилось на основе зубчатых колес, на них же предлагалось реализовать ЗУ (на 1000 50-разрядных чисел!). Для ввода данных и программы использовались перфокарты. Предполагаемая скорость вычислений — сложение и вычитание за 1 сек, умножение и деление — за 1 мин. Помимо арифметических операций имелась команда условного перехода. Программы для решения задач на машине Беббиджа, а также описание принципов ее работы, и были составлены Адой Байрон-Конг. Однако машина Бэбилда так никогда и не заработала. Были созданы отдельные узлы машины. Всю машину из-за ее громоздкости создать не удалось. Только зубчатых колес для нее понадобилось бы более 50.000. Заставить такую махину работать можно было только с помощью паровой машины, что и намечал сделать Беббидж. Так что можно утверждать, что прототипом первой в мире вычислительной машины является паровой компьютер.

Что же сделала для истории информатики леди Ада Байрон-Кинг? В 1843 году она перевела и аннотировала статью итальянского математика и инженера Луиджи Федерико Менабриа «Элементы аналитической машины Чарлза Бэббиджа». По ее выражению, аналитическая машина способна создавать алгебраические формулы, как жаккардовая машина может ткать цветы и листья. Она же предложила применять аналитическую машину для решения уравнений Бернулли. Примечания Ады к этой статье составили 52 страницы. По сути, это все, что она оставила для истории.

10 июля 1843 года в письме Ады к Чарлзу Бэббиджу промелькнула фраза: «Я хочу вставить в одно из моих примечаний кое-что о числах Бернулли в качестве примера того, как неявная функция может быть вычислена машиной без предварительного решения с помощью головы и рук человека». Именно эти несколько страничек и содержали, по мнению многих специалистов, образчик «первой в истории компьютерной программы».

В тексте примечаний к статье Менабреа была скрыта стройная теория программирования! Леди Ада ввела понятия «цикл», «рабочая ячейка», «распределяющая карта», определила связь рекуррентных формул с циклическими процессами вычислений, описала основные принципы алгоритмизации, между делом, разработав от “А” до “Я” вычислительную программу, достойную курсового проекта сегодняшнего студента технического вуза. Кроме того, она предсказала возможные направления практического использования вычислительной техники: сочинение музыкальных произведений, конструирование сложных графических объектов и даже компьютерные игры!

Это стало возможным потому, что второй страстью Ады после математики была музыка. Объединив свои пристрастия, первая программистка предположила, что со временем аналитическая машина сможет сочинять музыкальные произведения: “Суть и предназначение машины изменятся от того, какую информацию мы в нее вложим. Машина сможет писать музыку, рисовать картины и покажет науке такие пути, которые мы никогда и нигде не видели.

…Операционный механизм Аналитической Машины… может воздействовать и на другие объекты помимо чисел, если фундаментальные взаимоотношения этих объектов могут быть выражены на абстрактном языке науки об операциях и могут быть адаптированы к действию на уровне операционной нотации и механизма Аналитической Машины. Например, если бы фундаментальные соотношения звуковысот в науке о музыкальной гармонии и композиции могли быть подвергнуты такому выражению и адаптации, Машина, могла бы сочинять и разрабатывать научные музыкальные пьесы любой степени сложности или протяженности”. И это было написано ею в 1842 году!

После публикации «Примечаний» Чарльз Бэббидж стал именовать Аду Лавлейс «моим дорогим Интерпретатором». Ему было невдомёк, что через полтора века слава трудолюбивой «интерпретаторши» заставит померкнуть не только славу создателя Вычислительной Машины, но и славу своего отца — великого Байрона!

Остается добавить, что Министерство Обороны США в середине 70-х годов нашего столетия утвердило название «Ада», как имя единого языка программирования для американских вооруженных сил, а в дальнейшем и для всего НАТО.

Впрочем, вклад в историю информатики женщины по имени Августа Ада Байрон-Кинг, графиня Лавлейс увековечено не только в названии языка программирования для военных. День ее рождения отмечается как Международный день программистов.

Orphus system