On Friday 2007 September 07, David Kastrup wrote: (Disclaimer: I'm certainly not joining the "C++ for git" chant; this reply is merely to the statements made about C++ in David's message). > The problem with C++ is that every C++ developer has his own style, > and reuse is an illusion within that style. Take a look at classes > implementing matrix arithmetic: there are as many around as the day is > long, and all of them are incompatible with one another. One could say the same about any API. "Take a look at that C library libXYZ - it does exactly the same thing as libPQR but all the function calls and structures are different. Conclusion: C is shit". Obviously nonsense. > With regard to programming styles, C++ does not support multiple > inheritance. For a single project grown from a single start, you can Multiple inheritance is the spawn of the devil, but C++ _does_ support it. Forgetting about the terrible STL, to me there really is no difference between C and C++; you can be object oriented in C. Take a look at the Linux kernel, it should be printed out, rolled up and used to beat the ideas into students learning C++/Java/C#. Object oriented design is a choice, and if you really wanted you could do it in assembly. I would imagine the reason people often turn up wanting to rewrite Linux and git in C++ is because they are so object oriented in nature already and it's natural to think "wouldn't this be even better if I wrote it in an object oriented language"? Maybe, maybe not, but why bother? Andy -- Dr Andy Parkins, M Eng (hons), MIET andyparkins@xxxxxxxxx - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html