Registered: Jul 2008
07-16-12 10:23 PM
There is no war here that I know of ...
... that said, and despite all the love I have for C# (read my posts again if you are not convinced), the diamond problem wouldn't be such a problem in C# with multiple inheritance if C# was forcing the shared base class to be virtual (as can be done in C++).
It turns out that requires quite a bit of runtime overhead, which would be systematic in C# because all classes implicitly inherits from Object (which is pretty much a requirement for GC aka GarbageCollector). The single inheritance was just a way to cut a corner and keep C# performance as close as possible to that of C++.