Bjarne Stroustrup spoke at Columbia University today and after hearing him talk and (try to) answer my questions, I have to completely agree with the author. Bjarne Stroustrup is destroying C++. The man is a schizo, completely out of his mind.
This is a foolish judgment. He is an interesting mix of scientist, active researcher, hacker and manager. He is certainly not stupid and everything I ever read from him showed good argumention (which includes actually listening to your opponent's statements).
What I admired most of Stroustrup, was him not stopping creating and documenting a cool language, but transcending that level by cranking C++ through a standardization process.
That was mature.
No language can do all
things for all people.
C++ design goals were clear. And to be honest I am not convinced by your listing of goals that they contradict.
At present I am not sure what will happen to C++.
I am on a Java project now and I thought a lot about, if it is possible to take the good parts of Java and add them to C++.
The most important difference is the quality and size of the Java libraries in my opinion. The availability of a cross plattform GUI (AWT/Swing) is a big plus, combined with powerful IDEs.
The resulting software feels very modern. For the exception of the reflection API, I see no principal obstacle, why it is not possible to create something similiar for C++.
We could even create some VM platform for C++, to allow the easy porting of a certain class of software that does not need top notch performance, but rather needs to be available on a hugh range of platform. Something like
a kind of framework for MS Devstudio like IDEs.
Netbeans illustrates some problem I see with C++. While C++ programmers love the low level plane of programming, Java programmers tend to skip that and focus on the higher abstraction planes. I use to think more in terms of object and component interactions in Java than I do in C++. My guess to why is, that I have to less often reinvent the wheel in Java than in C++, because of the rich library. Conclusion we need such a library in C++.
But who will write it?
We have no Sun in the C++ world, except Microsoft and that one is promoting C# now. The open source world might come to the rescue, or might not. I am not sure yet. Stuff like qt and KDE or attempts like boost.org might help. But will they be enough? No idea yet.
Time is a problem as well. Perhaps one day we have the perfect open source version, like gcc 3.0 :-), but will it be state of the art? Right now we are a couple of years behind in some areas. As a C++ lover I hope people can allow them enough patience to stay with this baby. Otherwise our C++ community will become the next Lisp community, exclusive and convinced of having the best solution, but not used by the majority of professionals.
[ Parent ]