Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!usc!ginosko!uunet!mcsun!sunic!tut!tukki!sakkinen From: sakkinen@tukki.jyu.fi (Markku Sakkinen) Newsgroups: comp.lang.c++ Subject: Re: Object Oriented Program Design With Examples in C++, Mullin Message-ID: <1314@tukki.jyu.fi> Date: 18 Sep 89 06:36:30 GMT References: <4275@ncar.ucar.edu> <576@calmasd.Prime.COM> Reply-To: markku@jytko.jyu.fi (Markku Sakkinen) SAKKINEN@FINJYU.bitnet (alternative) Organization: University of Jyvaskyla, Finland Lines: 60 In article <576@calmasd.Prime.COM> wlp@calmasd.Prime.COM (Walter Peterson) writes: >In article <4275@ncar.ucar.edu>, vanandel@stout.ucar.edu (Joe Van Andel) writes: >> I saw yet another book on OOD/OOP , "Object Oriented Program >> Design with Examples in C++", by Mullin, in a bookstore, and was curious if >> [...] > [...] >I have found that the proper design of multiple inheritance is one of >the hardest things to get accross to people, so I wanted to see what >this book had to say. You say he didn't discuss it in any detail; now >that is an understatement! Basically he said that this thing called >multiple inheritance exists, but ( this is not a direct quote, but it >does convey the 'feel' of what the book says ) that it was not yet >common enough nor 'firmed-up' enough to talk about. Excuse me ? >C++ has multiple inheritance, several implementations of Smalltalk have it, >Eiffel has it, CLOS and Flavors have it, DSM has it,... Not common >enough ? Not 'firmed-up' enough ? These are, for the most part, >commercially released products; some of them very successful. > [...] Please calm down a little! Have you ever written a book yourself? Even if not, you might imagine that it takes some time from the basic concepts and outline of a book, to actual writing, to the publisher's copyediting, to printing, until the book is actually in the shops. Now, multiple inheritance exists in C++ only since 30 June this year when release 2.0 appeared (in USA, I have no idea when we Europeans have a chance to see it). It is absurd to blame an already published book for not handling that feature. I do personally believe in multiple inheritance, but I can understand that somebody considers it not to be well "firmed-up" today. It is handled differently in almost all existing languages and systems that incorporate it. What is worse, most of the approaches seem to have some fundamental flaws; see e.g. Alan Snyder, "Inheritance and the Development of Encapsulated Software Components" (in Reasearch Directions in Object-Oriented Programming, ed. by Shriver and Wegner). If the MI scheme of C++ really is like it was presented in an earlier paper by Stroustrup, it happens to be one of the best in my opinion (see my paper, "Disciplined Inheritance", in ECOOP'89). > [...] >I have still not found a good or even adequate OO design book. I KNOW >there is a market for one, simply because of the number of people who >ask me to recommend one to them ! So far I have had to answer that >there isn't a good one. There still isn't. Does that mean you condemn even Meyer's book (Object-oriented Software Construction)? I am not the only one who thinks highly of it in general. However, as has been brought up in the current discussions in comp.lang.eiffel, Meyer does not give a very good picture of multiple inheritance: the very first example is one where multiple inheritance should not be applied in the first place. Markku Sakkinen Department of Computer Science University of Jyvaskyla (a's with umlauts) Seminaarinkatu 15 SF-40100 Jyvaskyla (umlauts again) Finland