C++
Вспомнив опыт своей диссертации, Страуструп решил дополнить язык C (преемник BCPL) возможностями, имеющимися в языке Симула. Язык C, будучи базовым языком системы UNIX, на которой работали компьютеры Bell, является быстрым, многофункциональным и переносимым. Страуструп добавил к нему возможность работы с классами и объектами. В результате практические задачи моделирования оказались доступными для решения как с точки зрения времени разработки (благодаря использованию Симула-подобных классов), так и с точки зрения времени вычислений (благодаря быстродействию C). В первую очередь в C были добавлены классы (с инкапсуляцией), наследование классов, строгая проверка типов, inline-функции и аргументы по умолчанию. Ранние версии языка, первоначально именовавшегося «C with classes» («Си с классами»), стали доступны с 1980 года.
Теория языков программирования
В некотором смысле история теории языка программирования предшествует даже развитию самих языков программирования. В частности, λ-исчисление, разработанное Алонзо Чёрчем и Стивеном Клини в 1930-х годах, фактически является первым языком программирования, даже при том, что оно было предназначено больше для теоретических вопросов вычислимости, нежели является средством для программистов; многие современные функциональные языки программирования являются вариантами λ-исчисления. Дальнейшая история теории тесно переплетена с историей языков программирования, при этом в рамках теоретических исследований создавались новые парадигмы, конструкции и методы, а результаты внедрения их в практические языки программирования обеспечивали обратную связь для развития теории.