On Mon, 23 Feb 2004 06:51:56 -0500
"Steven T. Hatton"
I think the main reason was that at that time gcc C++ was not production ready... or C++ as a whole was not production ready.
Why do you speak in the past tense? ;-) Sorry. I'm just a bit
Do you prefer Java? ;) Try to ask to Linus to rewrite the kernel in Java ;)
disappointed with a few aspects of C++. No doubt it represents a
Agree... at least considering gcc support and in general libraries, some "modern" concepts of programming (threads, parallel computing, interface with OS, network) and as pointed out in the linux-kernel ml FAQ exceptions can be a PITA in some environment. There has been a lot of improvement on this side anyway, but I can't still forecast any improvement for adoption of good libraries to interfac
There are also, IMO, too many 'conveniences' built in. That is, slick ways of accomplishing things that really aren't that difficult to accomplish in more pedestrian ways. I'm not that experienced with the language, but I have the sense that some of these features may actually increase the amount of work expended in a the lifecycle of a project. If every moderately experienced programmer is sent flipping through the pages of his favorite C++ book to understand some arcane expression, the intended convenience is lost.
Disagree. I think in all these cases your freedom of choice is preserved.
frame. I wish more C++ programmers understood the advantages that some Java features and practices provide. It may simply be my lack
Those features comes at a cost and in Java you have not "freedom of choice".
of experience, but for me, locating comperable information in a C++ development environment is more difficult and time consumming than in a similar Java environment.
Guess why. Standardizing a language is a war. Many compromises have to be reached.
I was wondering if a new version of C++ could be introduced which would address some of it's shortcomings. An example of the kind of thing that bothers me about C++ is discussed on page 244 of Stroustrup's TC++PL 3rd Ed, SE. "The reason for the dissimilar treatment of classes and built-in types are C compatibility and fear of run-time overhead." I read that as: 'If I had my way, it wouldn't be so fubar'.
LOL... maybe.
This is an important point. You *can*, and people *do* write OO code in C. You *can* and people *do* write non-OO code in C++. I am of the opinion that C++ is not an 'object oriented' programming language. It is an 'object inclined' programming language.
C++ is a tool, a tool that helps writing OOP more than C. And you can shoot at yourself in the foot with a lot of different tools. OK... rumbling finished ;)