Джон Бэкус
Джон Бэкус (англ. John Backus; 3 декабря 1924, Филадельфия — 17 марта 2007, Ашленд, Орегон) — американский учёный в области информатики, создатель языка программирования Фортран (Fortran) и один из разработчиков нормальной формы Бэкуса — Наура (БНФ). Лауреат премии Тьюринга (1977) за вклад в создание высокоуровневых систем программирования и методологий описания синтаксиса языков.
Биография
Джон Уорнер Бэкус родился 3 декабря 1924 года в Филадельфии (штат Пенсильвания) в семье химика. Детство провёл в Уилмингтоне (штат Делавэр). После окончания школы поступил в Виргинский университет, где изучал химию, но из-за низкой успеваемости был отчислен. Во время Второй мировой войны служил в армии США, участвовал в боевых действиях в Европе. После войны переехал в Нью-Йорк, где работал радиотехником. В 1946 году поступил в Колумбийский университет на факультет математики, который окончил в 1949 году со степенью магистра.
В 1950 году Бэкус начал работать в корпорации IBM в отделе разработки вычислительных машин. В 1953 году он возглавил группу по созданию нового языка программирования для научных и инженерных расчётов. Результатом этой работы стал язык Фортран, первая версия которого была выпущена в 1957 году. В 1960-х годах Бэкус участвовал в разработке языка Алгол (ALGOL) и создал нормальную форму Бэкуса — Наура (БНФ) — формальную систему для описания синтаксиса контекстно-свободных грамматик.
В 1970-х годах Бэкус занимался теорией функционального программирования, предложив концепцию «функционального стиля» (FP). В 1977 году он получил премию Тьюринга за «глубокий и влиятельный вклад в разработку высокоуровневых систем программирования, особенно через создание Фортрана, и за новаторскую работу в области формального описания языков программирования». После выхода на пенсию в 1991 году жил в Ашленде (Орегон), где умер 17 марта 2007 года.
Вклад в информатику
Язык Фортран
Основным достижением Бэкуса считается создание языка Фортран (от англ. Formula Translation — «перевод формул»). Разработка началась в 1954 году в IBM под руководством Бэкуса. Целью было создание компилятора, который бы переводил математические формулы в машинный код, избавляя программистов от необходимости писать программы на ассемблере.
Первая версия Фортрана (Fortran I) была выпущена в 1957 году для компьютера IBM 704. Она включала:
- арифметические операции и функции;
- условные операторы IF и GO TO;
- циклы DO;
- подпрограммы и функции;
- массивы.
Фортран стал первым широко распространённым высокоуровневым языком программирования. Его использование сократило время разработки программ в 5–10 раз по сравнению с ассемблером. К 1960-м годам Фортран стал стандартом для научных и инженерных расчётов, а его версии (Fortran II, Fortran IV, Fortran 77, Fortran 90 и последующие) используются до сих пор.
Нормальная форма Бэкуса — Наура
В 1959 году Бэкус предложил формальную систему для описания синтаксиса языков программирования, которая позже была усовершенствована датским учёным Питером Науром. Эта система получила название нормальная форма Бэкуса — Наура (БНФ). Она использует металингвистические переменные, заключённые в угловые скобки, и правила подстановки, разделённые символом «::=» (или «→»).
Пример правила БНФ для определения целого числа: `` <целое> ::= <цифра> | <целое> <цифра> <цифра> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 ``
БНФ стала основой для описания синтаксиса многих языков программирования, включая Алгол, Паскаль, Си и другие. Она также используется в теории формальных грамматик и лингвистике.
Функциональное программирование
В 1970-х годах Бэкус разработал концепцию функционального программирования, которую изложил в статье «Может ли программирование быть освобождено от стиля фон Неймана?» (1977). Он предложил язык FP (Functional Programming), основанный на композиции функций и отсутствии побочных эффектов. Идеи Бэкуса повлияли на развитие языков Haskell, Miranda, ML и других функциональных языков.
Признание и награды
- Премия Тьюринга (1977) — за вклад в создание высокоуровневых систем программирования.
- Национальная медаль науки США (1975) — за вклад в развитие вычислительной техники.
- Премия Чарльза Старка Дрейпера (1993) — за создание Фортрана.
- Член Национальной академии наук США (1974).
- Член Американской академии искусств и наук (1985).
Критика
Несмотря на огромный вклад, Бэкус подвергался критике за некоторые решения в Фортране. Например, ранние версии языка не поддерживали рекурсию, динамическое выделение памяти и структурированные типы данных. Кроме того, синтаксис Фортрана (особенно использование фиксированного формата строк) считался устаревшим уже к 1970-м годам. Однако эти недостатки были исправлены в последующих версиях (Fortran 90, Fortran 2003).
Интересные факты
- Бэкус не получил формального образования в области информатики — его диплом был по математике.
- Первый компилятор Фортрана занимал 25 000 строк машинного кода и разрабатывался командой из 10 человек в течение 3 лет.
- Бэкус был заядлым пилотом и владел несколькими самолётами.
- В 1990-х годах он увлёкся философией и написал несколько эссе о природе сознания.
Источники
- John Backus. Can Programming Be Liberated from the von Neumann Style? // Communications of the ACM, 1978.
- Jean E. Sammet. Programming Languages: History and Fundamentals. — Prentice-Hall, 1969.
- Thomas J. Bergin, Richard G. Gibson. History of Programming Languages. — ACM Press, 1996.
- Некролог Джона Бэкуса в The New York Times, 20 марта 2007.
- Материалы IBM Archives о разработке Фортрана.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →