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,953e1a6689d791f6 X-Google-Attributes: gidfac41,public X-Google-Thread: 103376,953e1a6689d791f6 X-Google-Attributes: gid103376,public From: donh@syd.csa.com.au (Don Harrison) Subject: Re: Eiffel and Java + Ada dispatching Date: 1996/11/13 Message-ID: #1/1 X-Deja-AN: 196132866 sender: news@syd.csa.com.au x-nntp-posting-host: dev11 references: organization: CSC Australia, Sydney reply-to: donh@syd.csa.com.au newsgroups: comp.lang.eiffel,comp.lang.ada Date: 1996-11-13T00:00:00+00:00 List-Id: Bob Duff writes: :In article , :Don Harrison wrote: :>Ada Eiffel :>--- ------ :>generic class X [T -> Some_Type] ... :> type Some_Type is tagged limited private; :>package X ... : :I meant "type Some_Type is new Other_Type with private". Okay. What's the difference? :>Yes, This is true of Eiffel. You get the benefit of all the contracting :>defined in the type (and transitively, it's subtypes). But, you don't get :>this in Ada as it does not support Programming by Contract in the more :>general (and usual) sense. : :I'm not sure what you mean by that. That Ada doesn't have assertions? Yes. :True. But there's all kinds of other contractual stuff in Ada -- when :you export a type from a package, you define a contract; that is, what :operations there are, and what their parameter names and types are, and :so forth. Sure. This is certainly *part* of contracting but this stuff is what you'd expect of any sensible statically typed language so isn't anything startling. Static typing is good stuff but it's misleading, IMO, to say that Ada supports Programming by Contract because the term is implies assertions as well. Don. =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Don Harrison donh@syd.csa.com.au