This is a talk about the design and evolution of C++. As all programming languages, C++ owes a lot to earlier languages and evolves through the blending of ideas. This talk tries to answer some common questions about that success of C++: why did it succeed? At what did it succeed? How did it maintain a steady course over more than 25 years? At what did it not succeed? What was it and what is it becoming? The scale of C++’s success was unanticipated and its continuing strength have left many language and business theorists puzzled, so explanations are required. Given the long time span involved and because no large system can be designed with 20-20 foresight, a historical perspective is an essential part of any answer. A combination of technical, philosophical, and sociological issues must be considered. This talk focuses on the design aims of C++, my design rules for it, and my philosophy of incremental language evolution relying on feedback loops. It goes into some detail on the ISO standards process which has been central to the stability and evolution of C++. It gives a few – but only very few – code examples to illustrate the major stages of C++'s evolution. Key design objectives and features of the next ISO C++ standard, C++0x, are presented, but this is not a C++0x talk.
About the speaker:
Bjarne Stroustrup is known as the designer of the programming language C++.
Bjarne is now College of Engineering Chair in Computer Science Professor at Texas A&M University, but also AT&T Fellow at AT&T Labs where he has been working for several years. Bjarne has a degree in computer science from Aarhus University, 1975 and has a PhD degree from Cambridge University, 1979.