From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=0.2 required=5.0 tests=BAYES_00,INVALID_MSGID, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fac41,c52c30d32b866eae X-Google-Attributes: gidfac41,public X-Google-Thread: 1108a1,c52c30d32b866eae X-Google-Attributes: gid1108a1,public X-Google-Thread: 103376,2ea02452876a15e1 X-Google-Attributes: gid103376,public From: donh@syd.csa.com.au (Don Harrison) Subject: Re: Real OO Date: 1996/05/09 Message-ID: #1/1 X-Deja-AN: 153870617 sender: news@assip.csasyd.oz references: <68P8IzIk3RB@herold.franken.de> organization: CSC Australia reply-to: donh@syd.csa.com.au newsgroups: comp.lang.eiffel,comp.lang.ada,comp.object Date: 1996-05-09T00:00:00+00:00 List-Id: Joachim Durchholz writes: :ncohen@watson.ibm.com wrote 06.05.96 on Re: Real OO: [...] :> You CAN declare :> :> procedure S(X: in A'Class; Y: in B'Class); :> :> and this poses no problems. It does not dispatch. : :Well, Eiffel doesn't allow you to freeze parameter classes, so we have :a point where Ada allows a bit more freedom. Disagree. The fact that Eiffel allows you to redefine them to conformant types in descendants indicates greater freedom not less. There is no need to preclude redefinition and it is more flexible to be able to. BTW, I've just noticed that the third example in my previous post is not equivalent because it has a third parameter (Current): class SOME_OTHER_CLASS feature frozen q (x: X; y: B) is ... -- X and Y are classwide operands :-Joachim : :-- :Looking for a new job. Resume available on request. -- /// Don. (o o) =-=-=-=-=-=-=-=oOO=-(_)-=OOo=-=-=-=-=-=-=-=- Don Harrison donh@syd.csa.com.au