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=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!mx05.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail From: =?utf-8?Q?Yannick_Duch=C3=AAne_=28Hibou57?= =?utf-8?Q?=29?= Newsgroups: comp.lang.ada Subject: Re: Seeking for papers about tagged types vs access to subprograms Date: Mon, 06 May 2013 15:16:21 +0200 Organization: Ada @ Home Message-ID: References: <17ceq51ydy3s0.s94miqqzbg5w.dlg@40tude.net> NNTP-Posting-Host: 01/BPNoqk8s7XmPzrYdoUA.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 User-Agent: Opera Mail/12.15 (Linux) X-Notice: Filtered by postfilter v. 0.8.2 Xref: news.eternal-september.org comp.lang.ada:15370 Date: 2013-05-06T15:16:21+02:00 List-Id: Le Mon, 06 May 2013 14:11:32 +0200, Dmitry A. Kazakov = a =C3=A9crit: >> I feel the status distinction between tagged and untagged types as an= >> issue in some ways, this breaks something in the big picture, and bre= ak >> Ada, the language, in two too much distinct and foreign parts. > > Yes it does. That was a flaw of Ada 95 design. I guess it was the maxi= mum > of what Tucker Taft could press through fierce opposition. Fierce opposition from who? For what reasons? What did Tucker initially = = wanted? > There is nothing non-deterministic in tagged types. All calls with = > specific objects are statically resolved. Dynamic are only dispatching= = > calls > involving class-wide objects. Theoretically. In practice, GNAT don't agree (*). It has a pragma for = that, `pragma Restrictions (No_Dispatching_Calls)` which should even = enforce it in a whole application, but seems even with this active, it = still requires the whole part of the runtime dedicated to it, a part whi= ch = depends on this part, which depends on this other part, and so on (forgi= ve = me for having this kind of matter in mind, I know that's not the best to= = drive a decision, I just have to do with it). However and in the large, = I = agree with you and share the same understanding of the topic, at least = theoretically. (*) Don't know if SPARK agree and believe something can be proved about = = such a system, it's a too long time I didn't use it. A quick search on t= he = web seems to show it may be possible. > It should work exactly same with "untagged" > classes. BTW, there will be no problem to have mixed cases. There seem= s = > to be nothing wrong in inheriting from both a tagged and an untagged > interfaces. There result would be tagged, of course. Agree. -- = =E2=80=9CSyntactic sugar causes cancer of the semi-colons.=E2=80=9D [1] =E2=80=9CStructured Programming supports the law of the excluded muddle.= =E2=80=9D [1] [1]: Epigrams on Programming =E2=80=94 Alan J. =E2=80=94 P. Yale Univers= ity