On Wed, Sep 23, 2009 at 9:45 AM, Tom Bachmann <address@hidden>
I strongly side with bas here. Even if you hate so many things about C++ (which I'm not going to argue about), the syntactic sugar for non-fancy OOP (i.e. class and method structure, single inheritance) is a sufficient reason to use C++ IMHO.
That is certainly a credible argument for application code.
For microkernel code, I can only tell you that we downgraded from C++ back to C in Coyotos, and that doing so simultaneously reduced complexity and increased performance.
For application code, the hazard is that all implementations of abstraction involve indirection, indirection is slow, and all OO languages have as a primary objective the seduction of young programmers into an abiding love of gratuitous abstraction. And they succeed!
Abstraction, appropriately used, is powerful and good. Abstraction in the hands of most mortals isn't.