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,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,4ce5890331a5b529 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,UTF8 Path: g2news2.google.com!news4.google.com!feeder.news-service.com!94.75.214.39.MISMATCH!aioe.org!not-for-mail From: =?utf-8?Q?Yannick_Duch=C3=AAne_=28Hibou57?= =?utf-8?Q?=29?= Newsgroups: comp.lang.ada Subject: Re: Discriminants of tagged types Date: Sun, 31 Oct 2010 00:01:42 +0200 Organization: Ada @ Home Message-ID: References: <14314714-e92c-4036-9cbb-da8e72489261@h7g2000yqn.googlegroups.com> <3243de1d-c6b4-4845-ab5f-28ea4e9f5738@c20g2000yqj.googlegroups.com> <14f33f04-40f5-4a72-a18b-d511dd2eb3b3@w21g2000vby.googlegroups.com> <3c44f6d7-7ff0-4362-8902-fbcfe0eee788@a37g2000yqi.googlegroups.com> NNTP-Posting-Host: gHYtk+mhCrTAX6LNXybaBQ.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed; delsp=yes Content-Transfer-Encoding: Quoted-Printable X-Complaints-To: abuse@aioe.org X-Notice: Filtered by postfilter v. 0.8.2 User-Agent: Opera Mail/10.63 (Win32) Xref: g2news2.google.com comp.lang.ada:15965 Date: 2010-10-31T00:01:42+02:00 List-Id: Le Sat, 30 Oct 2010 23:21:39 +0200, Vinzent Hoefler = a =C3=A9crit: > Given an opaque type, how can you tell the difference? The set of > visible operations is the same. > > Anything else is an implementation detail that does not concern the > user of the type. IMO polymorphism and copy semantics are distinct > concepts. And that's true from an Ada's point view indeed : you can have tagged = types derived from the root Controlled type, and this can all be hidden = = from the public view. So at least Ada allows tagged types to be either = = Reference Semantic or Value Semantic the same way, and this can be part = of = either the public contract or of the implementation only. -- = Si les chats miaulent et font autant de vocalises bizarres, c=E2=80=99es= t pas pour = les chiens.