For faster navigation, this Iframe is preloading the Wikiwand page for Степанов, Александр Александрович (учёный).

Степанов, Александр Александрович (учёный)

Материал из Википедии — свободной энциклопедии

Александр Степанов
Дата рождения 16 ноября 1950(1950-11-16) (73 года)
Место рождения Москва, СССР
Страна
Род деятельности специалист в области информатики
Научная сфера Программирование
Место работы A9.com[англ.]
Альма-матер МГУ
Известен как Разработчик библиотеки STL
Награды и премии Dr. Dobb’s Excellence in Programming Award
Сайт stepanovpapers.com

Алекса́ндр Алекса́ндрович Степа́нов (англ. Alexander A. Stepanov) — русско-американский учёный в области информатики и вычислительной техники. Был топ-менеджером компаний SGI, AT&T и Compaq. Наиболее известен как создатель STL (англ. Standard Template Library), ставшей частью стандартной библиотеки языка C++.

Родился 16 ноября 1950 года в Москве на Остоженке. С 1967 по 1972 год изучал математику на Механико-математическом факультете Московского государственного университета (с перерывом на службу в армии). В 1973 году получил диплом учителя математики в Московском областном педагогическом институте имени Крупской (МОПИ)[1]. С 1972 по 1976 годы работал в Институте проблем управления и ЦНИИКА. В команде программистов под руководством Александра Гуревича участвовал в разработке мини-компьютера для управления гидроэлектростанциями. Занимался разработкой аппаратуры, операционных систем, отладчиков. Первая опубликованная работа относится к этому периоду, была посвящена операционным системам реального времени. В это же время (по его словам, в 1976 году) у него появились идеи, связанные с обобщённым программированием, которые через 15 лет вылились в разработку библиотеки STL.

В 1977 году эмигрировал в США. Начал работать в исследовательском центре компании General Electric в Скенектади, штат Нью-Йорк. В это время работал над языком программирования Tecton, в этой работе принимал участие Дэвид Мюссер (англ. David Musser) — соратник во многих последующих проектах.

В 1983 году стал доцентом (assistant professor) в Политехническом университете Бруклина. Результатом этого периода было создание, совместно с Дэвидом Мюссером и Ароном Кершенбаумом, большой библиотеки компонентов на Scheme (диалект Lisp).

В 1985 году Степанов был вновь приглашён в GE Research для преподавания курса высокоуровневого программирования. Получил грант от GE Research[англ.] для работы над реализацией идей обобщённого программирования в виде библиотеки алгоритмов на языке Ада.

В 1987 году получил предложение о работе в Bell Laboratories, чтобы реализовать свой подход в виде библиотеки на языке C++. Однако стандарт языка в это время ещё не позволял в полном объёме осуществить задуманное.

В 1988 году перешёл в HP Labs, где первоначально работал над вещами, не связанными с обобщённым программированием: системами хранения данных, дисковыми контроллерами. В 1992 году вернулся к работе над алгоритмами, в конце 1993 года рассказал о своих идеях Энди Кёнигу, который, высоко оценив их, организовал ему встречу с членами Комитета ANSI/ISO по стандарту C++. Уже весной 1994 года библиотека STL, разработанная Степановым, при помощи Менг Ли (англ. Meng Lee) стала частью официального стандарта языка C++.

В 1995 году перешёл в SGI, где первоначально работал над новым вариантом реализации библиотеки STL. С 1999 года — главный инженер подразделения серверов и суперкомпьютеров SGI.

В мае 2000 года перешёл в AT&T как вице-президент и главный архитектор AT&T Laboratories. В декабре того же года перешёл в Compaq как вице-президент и главный учёный.

С ноября 2002 года до ноября 2009 года работал в компании Adobe, где занимался преподаванием программирования[2].

С ноября 2009 работает в A9.com[англ.] — дочернем предприятии компании Amazon[3].

В 2016 вышел на пенсию.[4]

В 1995 году получил Dr.Dobb’s Excellence In Programming Award за создание STL, разделив премию с Линусом Торвальдсом[1].

Своим наибольшим достижением считает появление понятия обобщённого программирования, целью которого является возможность написания алгоритмов очень высокого уровня абстракции, которые при этом будут так же эффективны, как и код, написанный специально для конкретного случая использования. Достигается это разбиением программ на особым образом классифицированные и организованные элементы. Воплощением этой идеи в жизнь является STL.[источник?] Кроме обобщённого программирования, написал несколько работ по робототехнике, системам хранения данных.[источник?]Известен также как автор так называемого «теста Степанова», оценивающего качество компиляторов.

Примечания

[править | править код]
  1. 1 2 Jonathan Erickson. Dr. Dobb's Journal Excellence in Programming Award. Dr. Dobb’s Journal (1 марта 1995). Дата обращения: 12 марта 2015. Архивировано 2 апреля 2015 года.
  2. Andrew Binstock. An Interview with Alexander Stepanov and Paul McJones on Elements of Programming. InformIT (3 августа 2009). Дата обращения: 12 марта 2015. Архивировано 19 февраля 2015 года.
  3. John Lacos. From Mathematics to Generic Programming: An Interview with Alexander Stepanov and Daniel Rose. InformIT (16 февраля 2015). Дата обращения: 12 марта 2015. Архивировано 23 марта 2015 года.
  4. [1] Архивная копия от 3 августа 2017 на Wayback Machine, Jan 14, 2016

Литература

[править | править код]
  • Александр Степанов, Пол Мак-Джонс. Начала программирования = Elements of Programming (Hardcover). — М.: «Вильямс», 2011. — 272 с. — ISBN 978-5-8459-1708-9.
  • Роуз Д., Степанов А.А. От математики к обобщённому программированию = From Mathematics to Generic Programming. — М.: «ДМК Пресс», 2015. — 264 с. — ISBN 978-5-97060-379-6. — ISBN 978-5-97060-289-8.
  • Alexander A. Stepanov, Daniel E. Rose. Three Algorithmic Journeys - Self publishing, 2013 - 254 с. - http://stepanovpapers.com/Journeys/Journeys-0.3.pdf
{{bottomLinkPreText}} {{bottomLinkText}}
Степанов, Александр Александрович (учёный)
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?