Christopher Smith wrote:
There are quite a few languages that do everything C++ can do, and
they do it much better.
All evidence to the contrary aside....
What evidence to the contrary? Popularity? That's about all I can
think of.
When a language develops an entire book and vocabulary (Design Patterns)
simply to deal with the deficiencies of the language, that's some
pretty powerful evidence that the language is very broken. It
*certainly* would not qualify for pedagogy.
Note that I am not talking about C/C++ as a unit. I am speaking about
them as separate entities.
I agree that C is a useful pedagogical language.
I do *not* agree that C++ is a useful pedagogical language.
Quoting:
Why C++ Matters
C++ brings to C the fundamental concepts of modern software
engineering: encapsulation with classes and namespaces, information
hiding through protected and private data and operations, programming
by extension through virtual methods and derived classes, etc. C++
also pushes storage management as far as it can go without full-blown
garbage collection, with constructors and destructors.
All of those are easily answered by Java or C# with the sole feature of
"pushing storage management as far as it can go without full-blown
garbage collection".
Unfortunately, constructors and destructors are excruciatingly difficult
to get right in the presence of exceptions. The fact that that you have
to pull out about 3 different books to get this right says that
something is broken.
-a
--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg