Home Page -------------------
[Home Page] - [Reviews Main]
-------------------

Combined Review
The Design and Evolution of C++ by Bjarne Stroustrup
Recommended
ISBN: 0-201-54330-3       Publisher: Addison-Wesley       Pages: 460pp       Price: £21-95
The Evolution of C++ by Jim Waldo
Recommended
ISBN: 0-262-73107-X       Publisher: MIT Press       Pages: 279pp       Price: £?
Categories:   beginner's c++     advanced c++    
Reviewed by Francis Glassborow in C Vu 6-4 (May 1994)
Though the second of these books was published some time last year it has only just arrived on my doorstep almost the same day that the first one arrived by air from the US (thanks Bjarne for thinking of me when you made up your list of people to receive complimentary copies) which meant that I had it some six weeks ahead of its general availability in the UK.

Both books are excellent and cover similar ground from different viewpoints. Bjarne Stroustrup's book is a carefully worked description of his view of the development of C++. As the original designer of the language his view is valuable and often explains what may appear to be eccentricities of the language. The prime cause for the introduction of such items as function overloading may surprise some (perceived as required to support multiple constructors. There is a certain irony here as while I was reading the book there was a discussion on the extensions reflector for standardising C++ which include a proposal to allow distinct constructor function names)
The other book is a collection of papers that the editor has selected as being pivotal to the development of C++. Several of these are either authored or co-authored by Bjarne Stroustrup. Over the years there have been many excellent papers presented about C++ and so the author's personal view of C++ will influence his selection. I wish that the selection had been made by a broad based editorial panel because I have no doubt that the editor has a marked tendency to view C++ as principally, if not solely, for object- oriented programming. This is in marked contrast to Bjarne Stroustrup's re- iterated statement that C++ is intended to be a language for you to use in the manner you choose.

If I could only buy one of these books my choice would go to Bjarne's book. It is informative, written in a style that does not get between the reader and the substance and provides excellent insights into the principle language designer's intentions. An excellent example that serious books can also be enjoyable. But what more would you expect from a language designer who describes his creation as "C++ is a general-purpose language designed to make programming more enjoyable for the serious programmer."
The other book is tougher going because much of the writing is in styles that can make reading hard work. The papers are often about contentious proposals about the language and are part of a continuing debate about the way that things should progress. The fact that Bjarne Stroustrup is more often right than wrong should not obscure the fact that other experts have to work out routes from where we are to where we want to be. This takes a lot of effort, not least to convince ourselves that the destination is the right one.

I hope Bjarne will forgive me for saying that he has a reputation for doing all the easy things while leaving others to do the hard bits. The real world needs both visionaries and technical experts, one must point the way, the others must get us there. Reading both books will help you to understand this better.


Other Authors with the same surname

Stroustrup
Annotated C++ Reference Manual, The by Margaret Ellis & Bjarne Stroustrup [Recommended]  (Reviewed Mar 1991)
C++ Programming Language (Second Edition), The by B. Stroustrup [Recommended]  (Reviewed Mar 1992)
C++ Programming Language 3rd ed, The by B Stroustrup [Highly Recommended]  (Reviewed Jan 1998)
C++ Programming Language Special Edition, The by Bjarne Stroustrup [Highly Recommended]  (Reviewed May 2000)


Last Update - 13 May 2001.

To link to this review, please use the URL: http://www.accu.org/bookreviews/public/reviews/d/d000452.htm

Copyright © The Association of C & C++ Users 1998-2000. All rights reserved.

Mirrored from http://www.accu.org/