Xref: utzoo comp.lang.eiffel:1381 comp.object:2520 Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!mcsun!ukc!pyrltd!tetrauk!rick From: rick@tetrauk.UUCP (Rick Jones) Newsgroups: comp.lang.eiffel,comp.object Subject: Re: Inheritance and Information Hiding Message-ID: <1086@tetrauk.UUCP> Date: 6 Feb 91 21:30:37 GMT References: <808@puck.mrcu> <10612@pasteur.Berkeley.EDU> <1080@tetrauk.UUCP> <27A9AB0C.4794@tct.uucp> Reply-To: rick@tetrauk.UUCP (Rick Jones) Organization: Tetra Ltd., Maidenhead, UK Lines: 30 In article <27A9AB0C.4794@tct.uucp> chip@tct.uucp (Chip Salzenberg) writes: >According to rick@tetrauk.UUCP (Rick Jones): >>Given that this thread is starting to look like an Eiffel v C++ debate, there >>is a significant aspect of Eiffel which has been overlooked - assertions. > >Please don't cloud discussions with irrelevant issues. > >Inheritance and information hiding issues are orthagonal to assertion >issues. A given language may support the former, the latter, both, or >neither. Let's keep the discussions clear. A significant theme of this thread was the postulation by some that the notion of "private" was essential in order to prevent subclasses from breaking their parent's invariants. The connection between assertion and information hiding had already been made. My point is that, as far as maintaining invariants is concerned, there is more than one way to skin a cat. In fact my view is that assertions are a superior method. If "private" is used to achieve this, then information hiding and assertions are not being kept separate. If assertions are used the two issues are separated. In summary, I agree with Chip on the orthogonality, but the issue is neither irrelevant nor, it seems, entirely free of clouds. A little discussion might let in some light. -- Rick Jones Tetra Ltd. Maidenhead, Was it something important? Maybe not Berks, UK What was it you wanted? Tell me again I forgot rick@tetrauk.uucp -- Bob Dylan