C sucks, so adding to C amplifies the ways C sucks. All of the flaws and mistakes of C become bigger problems without fixing the problems C already had.
As DLW says, "C++ is the C of object oriented programming languages."
Subject: Re: Smalltalk Versus C++ (No Flame Wars, Please!)
In some article RH writes:
> A core dump is C++'s way of "delaying the objection until
> run-time"
Putting it another way:
`Method not found' is Smalltalk's way of spelling `core dumped'
Date: Mon, 1 Jun 92 21:16:22 EDT
Subject: Re: Imagery
Continuing in the Unix mail tradition of adding
tangential remarks,
Likewise,
I've always thought that if Lisp were a ball of mud,
and APL a diamond, that C++ was a roll of razor wire.
That comparison of Lisp and APL is due to Alan Perlis - he
actually described APL as a crystal. (For those who haven't
seen the reasoning, it was Alan's comment on why everyone
seemed to be able to add to Lisp, while APL seemed
remarkably stable: Adding to a crystal is very hard, because
you have to be consistent with all its symmetry and
structure. In general, if you add to a crystal, you get a
mess. On the other hand, if you add more mud to a ball of
mud, it's STILL a ball of mud.)
To me, C is like a ball. Looked at from afar, it's nice and
smooth. If you come closer, though, you'll see little
cracks and crazes all through it.
C++, on the other hand, is the C ball pumped full of too
much (hot) air. The diameter has doubled, tripled, and
more. All those little cracks and crazes have now grown
into gaping canyons. You wonder why the thing hasn't just
exploded and blown away.
BTW, Alan Perlis was at various times heard to say that
(C|Unix) had set back the state of computer science by
(10|15) years.