Re: [RFC] Convert builin-mailinfo.c to use The Better String Library.
- From
- Andy Parkins <andyparkins@gmail.com>
- Date
- Sep 7, 2007, 07:41 UTC
- Message-ID
- <200709070841.33057.andyparkins@gmail.com>
- In-Reply-To
- <85ejhb7yzw.fsf@lola.goethe.zz>
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@gmail.com