On Wed, 28 May 1997, The African Chief wrote:
If it can be done, then it should be done. However, I would advise against using it in the RTS or in any UNIT supplied as part of the GPC distribution. Let us make it's use completely optional (i.e., people can use it in their own programs if they want, but GPC is itself free from it.
Well, removing GOTO is another thing that could be done. Maybe we shouldn't do that, but *please*, let's not add multiple inheritance to a language whose goal is to be the Right Thing and to be simple. Do you know how many pages there is in the C++ standard? Its something in excess of a *thousand*. Do we want *that*? Also note that Java has been widely recognized as "C++ as it should have been" (by Bjarne Stroustrup among others, the designer of C++), and Java *doesn't* have multiple inheritance.
I think this is better than using MI. BP seems to have set the trend to have an almost useless ultimate ancestor for an object heirarchy. I personally do not agree with that philosophy.
Why do you disagree? I really don't see what a TWindow object and a TString object has in common that should be in TObject! BP didn't set that trend BTW. The Smalltalk anscestor object doesn't do *ANYTHING*. BP's constructor fills the object with zeros for instance. :-) The use is in having the POBject pointer type handy, that can handle *any* objects. You have a single TCollection that can handle both TWindow objects and TString objects, even a *MIX* of those! *This* is what TObject is there for, not have a heap of methods.
For instance, I tried to make my class as much object-oriented as possible, free of any procedures. For example, Abstract has been made a method of TObject and a similar NoStream method has been added to prevent streaming of non-streamable objects (this is very quite not final, susceptible to removal).
A thing that would be better to have than multiple inheritance would be pure virtual methods. Would allow me to remove that Abstract method! ;-)
Pierre Phaneuf
"The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense." - Edsger W. Dijkstra.