"After all, C++ isn't a perfect match for Java's design aims either." -- Bjarne Stroustrup
Bjarne Stroustrup (; born December 30, 1950 in Århus, Denmark) is a computer scientist, most notable for the creation and the development of the widely used C++ programming language. He is currently Professor and holder of the College of Engineering Chair in Computer Science at Texas A&M University.
Stroustrup began developing C++ in 1979 (then called "C with Classes"), and, in his own words, "invented C++, wrote its early definitions, and produced its first implementation... chose and formulated the design criteria for C++, designed all its major facilities, and was responsible for the processing of extension proposals in the C++ standards committee." Stroustrup also wrote what many consider to be the standard text for the language, The C++ Programming Language, which is now in its third edition. The text has been revised twice to reflect the evolution of the language and the work of the C++ standards committee.
"Certainly not every good program is object-oriented, and not every object-oriented program is good.""Clearly, I reject the view that there is one way that is right for everyone and for every problem.""Defining OO as based on the use of class hierarchies and virtual functions is also practical in that it provides some guidance as to where OO is likely to be successful.""First, I'd like to see the basic tools such as compilers, debuggers, profilers, database interfaces, GUI builders, CAD tools, and so forth fully support the ISO standard.""However, when Java is promoted as the sole programming language, its flaws and limitations become serious.""I find languages that support just one programming paradigm constraining.""I would encourage nonproprietary standards for tools and libraries.""It is easy to study the rules of overloading and of templates without noticing that together they are one of the keys to elegant and efficient type-safe containers.""My list of basic tools is a partial answer to the question about what has changed: Over the past few years, large numbers of programmers have come to depend on elaborate tools to interface code with systems facilities.""People who passionately want to believe that the world is basically simple react to this with a fury that goes beyond what I consider appropriate for discussing a programming language.""Personally, I look forward to better tools for analyzing C++ source code.""The standard library saves programmers from having to reinvent the wheel.""This evolution may compromise Java's claim of being simpler than C++, but my guess is that the effort will make Java a better language than it is today.""Thus, the standard library will serve as both a tool and as a teacher.""With the increasing importance of standards for system-level objects such as COM and CORBA, it is particularly important that the C++ bindings to those be clean, well documented, and simple to use."
Stroustrup has a master's degree in mathematics and computer science (1975) from the University of Aarhus, Denmark, and a Ph.D. in computer science (1979) from the University of Cambridge, England. He was the head of AT&T Lab's Large-scale Programming Research department, from its creation until late 2002. Stroustrup was elected member of the National Academy of Engineering in 2004. He is a Fellow of the ACM (1994) and an IEEE Fellow. He currently works at Texas A&M University as a Professor where he holds the College of Engineering Chair in Computer Science.