Friday, February 22, 2008

Bjarne's Last Laugh

I haven't done C++ in a long time but I recently thought of something Bjarne Stroustrup said at a keynote address in 2000. It is essentially the same as this quote from his FAQ.

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.

-- Bjarne Stroustrup, circa 2000
The part about implementation-dependency was wrong, but the complexity prediction was well-put. I'm a Java fan (and am not put off by the complexity), but credit is due when credit is due.


Cedric said...

What's so remarkable about predicting that a language will become more complicated over time?

Michael Easter said...


IMO, it is remarkable given the current debate about complexity in Java.

In 2000, C++ was considered overly complex and was being usurped by the young upstart, Java. Compare that to the current debate of closures and generics of Java (vis-a-vis Groovy, Scala, etc).

It may not have been a risky, genius prediction, but noteworthy.

Ben said...

You've got to be kidding me if you think Java's complexity, which has indeed increased significantly with generics and autoboxing, is anywhere close to C++'s context-dependent parsing and broken exception model.

It remains my fervent hope, however, that the current closure proposals will die a quick and clean death before ever coming near a released version of Java.