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=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,29d8139471e3f53e X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII Path: g2news1.google.com!news3.google.com!feeder2.cambriumusenet.nl!feed.tweaknews.nl!85.158.31.10.MISMATCH!newsfeed-0.progon.net!progon.net!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: "(see below)" Newsgroups: comp.lang.ada Subject: Re: Preventing type extensions Date: Tue, 21 Sep 2010 20:07:03 +0100 Message-ID: References: <87iq2bfenl.fsf@mid.deneb.enyo.de> <874odv9npv.fsf@ludovic-brenta.org> <87y6b7cedd.fsf@mid.deneb.enyo.de> <66a3704c-54f9-4f04-8860-aa12f516134b@t3g2000vbb.googlegroups.com> <87d3sib44t.fsf@mid.deneb.enyo.de> <134q4k2ly2pf4$.17nlv1q6q5ivo.dlg@40tude.net> <4c8dec8e$0$6990$9b4e6d93@newsspool4.arcor-online.net> <8f6cceFrv2U1@mid.individual.net> <135a7dc9-3943-45e4-884b-3cc6bce3db0a@q18g2000vbm.googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit X-Trace: individual.net TPDGg++ACmBAxMbB8Jto9AYAv+PAuJoDTLV0z8TET4OJV2r0EP Cancel-Lock: sha1:EoKpSJBWzDNNMD03QEYpn4uw1oo= User-Agent: Microsoft-Entourage/12.23.0.091001 Thread-Topic: Preventing type extensions Thread-Index: ActZwCzG8AI/+QEpt0yZNkiap8wa9A== Xref: g2news1.google.com comp.lang.ada:14180 Date: 2010-09-21T20:07:03+01:00 List-Id: On 21/09/2010 18:37, in article b1409cbd-97c5-4f7b-bbc4-15721a8f6ff7@v23g2000vbi.googlegroups.com, "Cyrille" wrote: > On Sep 21, 4:50�pm, "(see below)" wrote: >>> all OO languages I'm aware of, have the notion of classwide types... >>> They just don't make the distinction between a type on its own and a >>> type with its derived types. If you think about it, it is a peculiar >>> distinction at the "design" level. A horse is an animal... When I deal >>> with animals, I must be ready to accept that maybe the animal I'm >>> dealing with may be a horse, or may be something else. It's peculiar >>> to expect it to be the pure notion of "animal" and nothing else... >> >> What is peculiar about abstraction? > > Abstraction is a good thing. Differentiating between Animals and > Animals'Class doesn't particularly help abstraction, as far as I am > concerned. This differentiation was a neat way to introduce OO into an > existing language such as Ada 83, I don't think there is more to it > than that. NOT distinguishing between Animals and Animals'Class causes forced polymorphism: it makes it impossible to have an object that is certain to be of type Animals and not any of the descendent types of Animals. This is a Bad Thing in my view. -- Bill Findlay chez blueyonder.co.uk