A friend of mine sent me an email today pointing me towards Stroustrup's web page, for those of you who don't know he is the person who invented C++. Here is his homepage http://www.research.att.com/~bs/ and it's quite interesting (even for a Java person)
of course because he invented C++ he is bombarded with questions comparing Java with C++ and which one is better/faster/more Object Orientated etc. So he put questions such as this into a FAQ list and this one in particular caught my eye
No. Java isn't even close. If people insist on comparing C++ and Java - as they seem to do - I suggest they read The Design and Evolution of C++
(D&E) to see why C++ is the way it is, and consider both languages in the light of the design criteria I set for C++. Those criteria will obviously differ from the criteria of Sun's Java team. Despite the syntactic similarities, C++ and Java are very different languages. In many ways, Java seems closer to Smalltalk than to C++.
Much of the relative simplicity of Java is - like for most new languages - partly an illusion and partly a function of its incompleteness. As time passes, Java will grow significantly in size and complexity. It will double or triple in size and grow implementation-dependent extensions or libraries. That is the way every commercially successful language has developed. Just look at any language you consider successful on a large scale. I know of no exceptions, and there are good reasons for this phenomenon. [I wrote this before 2000; now see a preview of Java 1.5.]
Java isn't platform independent; it is a platform. Like Windows, it is a proprietary commercial platform. That is, you can write programs for Windows/Intel or Java/JVM, and in each case you are writing code for a platform owned by a single corporation and tweaked for the commercial benefit of that corporation. It has been pointed out that you can write programs in any language for the JVM and associated operating systems facilities. However, the JVM, etc., are heavily biased in favor of Java. It is nowhere near being a general reasonably language-neutral VM/OS.
Personally, I'll stick to reasonably portable C++ for most of the kind of work I think most about and use a variety of languages for the rest.
This seem quite an amusing question to ask someone who invented C++ I wonder if people still compare Java and the various C languages so much any more, it seems to me and I admit I don't know that much about C++ etc that Java's speed and the processors in computers have improved enough so that speed is not the main issue any more. I have a sneaky feeling that this is probably because the stuff I have been working on is not on such a big scale that time is that important to me and I'm sure C++ is probably still quicker but it doesn't really matter to me.
It's interesting about his point that the JVM will bloat up, this does strike me as a fairly obvious statement because the more stuff that is added to the JVM and the Java language the bigger it is going to get. I remember listing to a debate/discussion on the Java Posse where they were talking about the database being added to the JVM, they were saying it would be nice if people could choose.
I was wondering if with Java going open source that there will be skinny versions of the JVM and people stripping out stuff they don't need a bit like Linux and it's kernel. Then again does it matter that much, computers have plenty of hard disk space.
I like his comment that JVM is a platform and not platform independent, I hadn't really thought of the JVM as a platform before.
As he wrote the FAQ quite a while ago he did quite a good job of predicting the future but I wonder how Java going open source will effect things like speed and bloatness. Does anyone have any comments on this, I would like to hear what you have to say as I am a bit in the dark over such things. Is Java getting/is bloated and does it matter?
If you like this blog or and fancy something a bit less technical with some laughing thrown in then check out my other blog Amusing IT Stories. Which is a blog about funny and amusing stories from the IT environment and the office. It is a mix of news, office humour, IT stories, links, cartoons and anything that I find funny