[Home Page] - [Reviews Main] | |
|
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) |
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.
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.