Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!hsi!stpstn!lerman From: lerman@stpstn.UUCP (Ken Lerman) Newsgroups: comp.lang.c++ Subject: Re: typeof() and virtuals and overloading, oh my! Message-ID: <6754@stpstn.UUCP> Date: 5 Apr 91 15:10:41 GMT References: <27F77834.16D6@tct.com> <27EF838D.4115@tct.uucp> <19093@milton.u.washington.edu> <157@devnull.mpd.tandem.com> <162@devnull.mpd.tandem.com> Reply-To: lerman@stpstn.UUCP (Ken Lerman) Organization: The Stepstone Corporation, Sandy Hook, CT 06482 Lines: 32 I've been sitting on the sidelines listening to the fracas, but now I think it might be useful for me to comment based on my experience with Objective-C. 1 -- It is possible to save and restore arbitrarily complex graphs of objects without explicit cooperation from each class. This is done in Objective-C. 2 -- It IS necessary (IMHO) that each object be able to identify itself. In Objective-C, this is done by having an instance variable (called isa) which points to a class structure which contains the name, the types of instance variables, ... , for that class. The construction of that structure requires compiler support. 3 -- It is NOT necessary that each class in Objective-C have the same root class, but it IS necessary that each have a first instance variable which is the "isa" pointer. 4 -- I don't understand the aversion to having a single root class for those objects which we wish to make persistent. It seems to me that multiple inheritence might be good for this. (If it is not good for this, what is it good for?) If you believe our customers, the ability to save and restore object graphs is valuable. At least for applications written in Objective-C. This is NOT intended to tell you to change your language to match mine. But if you want to add this functionality, experience with Objective-C might be valuable. Ken