Александр Александрович Степанов ( русский : Александр Александрович Степанов , родился 16 ноября 1950 года, Москва ) является русско-американским программистом , известный как сторонник общего программирования и в качестве основного конструктора и реализатора на C ++ Standard Template Library , [1 ], которую он начал разрабатывать примерно в 1992 году, когда работал в HP Labs . Ранее он работал в Bell Labs рядом с Эндрю Кенигом и пытался убедить Бьярна Страуструпа ввести что-то вроде дженериков Ada в C ++.[2] Ему приписывают понятие концепции . [3] [4]
Он является автором (с Полом McJones ) из элементов программирования , [5] книга , которая выросла из «Основы программирования» , конечно [6] , что Степанов преподавал в Adobe Systems ( во время работы там). Он также является автором (вместе с Дэниелом Э. Роуза) книги « От математики к общему программированию» . [7]
Он ушел из A9.com в январе 2016 года . [8]
Стандартная библиотека шаблонов и общее программирование [ править ]
Александр Степанов - сторонник универсального программирования . Хотя Дэвид Массер уже разработал и отстаивал некоторые аспекты общего программирования к 1971 году, оно ограничивалось довольно специализированной областью разработки программного обеспечения ( компьютерной алгеброй ).
Степанов осознал весь потенциал универсального программирования и убедил своих тогдашних коллег из General Electric Research and Development (включая, в первую очередь, Дэвида Массера и Дипака Капура), что универсальное программирование должно использоваться в качестве всеобъемлющей основы для разработки программного обеспечения. В то время ни один из языков программирования не поддерживал универсальное программирование.
Первым крупным языком, предоставившим такую поддержку, был Ada с его универсальными модулями. К 1987 году Степанов и Массер разработали и опубликовали библиотеку Ada для обработки списков, которая воплотила в себе результаты большей части их исследований по универсальному программированию. Однако Ада не получила большого признания за пределами оборонной промышленности, а C ++, похоже, получил широкое распространение и обеспечил хорошую поддержку общего программирования, хотя язык был относительно незрелым. Еще одна причина обращения к C ++, которую Степанов признал на раннем этапе, заключалась в том, что модель вычислений C / C ++ (которая обеспечивает очень гибкий доступ к хранилищу через указатели ) имеет решающее значение для достижения универсальности без потери эффективности.. Это в конечном счете привело к разработке стандартной библиотеки шаблонов в C ++ .
См. Также [ править ]
Ссылки [ править ]
- ^ Степанов, Александр ; Ли, Мэн (1995-11-14). «Стандартная библиотека шаблонов» . Технический отчет лабораторий HP 95-11 (R.1).
- ^ Страуструп, Бьярне (май 2007). Развитие языка в реальном мире и для него: C ++ 1991-2006, раздел 4.1.2 (PDF) . препринт. ACM HOPL -III Конференция. С. 4-1–4-59. DOI : 10.1145 / 1238844.1238848 . ISBN 978-1-59593-766-7. S2CID 7518369 .
- ^ немного информации о концепциях и C ++ 17 - Бьярн Страуструп , Бьярн Страуструп | 26 февраля 2016 г.
- ^ Алекс Степанов , Бьярн Страуструп | 21 янв.2016 г.
- ^ Степанов, Александр ; МакДжонс, Пол (2009). Элементы программирования . Эддисон-Уэсли. ISBN 978-0-321-63537-2.
- ↑ Степанов, Александр (2007). Примечания по программированию (PDF) .
- ^ Степанов, Александр А .; Роуз, Дэниел Э. (2015). От математики к общему программированию . Эддисон-Уэсли. ISBN 978-0321942043.
- ↑ Alex Retirement , 14 января 2016 г.
Дальнейшее чтение [ править ]
- Степанов Александр . "STLport: Интервью с А. Степановым" . Проверено 21 апреля 2010 .
Внешние ссылки [ править ]
В Викицитатнике есть цитаты, связанные с: Александром Степановым. |
- Собрание сочинений Александра Александровича Степанова
- Интервью Степанова, STLport , 1997 г.
- Еще одно интервью с д - ром Доббс , март 1995 года
- Range Partition Adapters Многопоточная библиотека на основе STL, вдохновленная статьей Александра Степанова.
- Интервью , по Эндрю Бинсток , с Александром Степановым и Павла McJones по элементам программирования .
- A9 Видеолекция Александра Степанова.