comp.lang.ada
 help / color / mirror / Atom feed
From: Robert A Duff <bobduff@shell01.TheWorld.com>
Subject: Re: Limited_Controlled, orthogonality and related issues
Date: Fri, 19 Jan 2007 15:17:04 -0500
Date: 2007-01-19T15:17:04-05:00	[thread overview]
Message-ID: <wcc8xfylqkf.fsf@shell01.TheWorld.com> (raw)
In-Reply-To: saxsio4vbe0z.579ds1eq9cv4$.dlg@40tude.net

"Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> writes:

> On Fri, 19 Jan 2007 11:36:57 -0500, Robert A Duff wrote:
>
>> "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> writes:
>> 
>>> On Fri, 19 Jan 2007 10:29:35 -0500, Robert A Duff wrote:
>>>
>>>> Make all types tagged.  For efficiency, this would require a different
>>>> run-time model than what Ada compilers currently do -- you don't want
>>>> to store a tag field with every Boolean variable!  To enable the
>>>> non-stored-tag model, eliminate the rule that all tagged parameter
>>>> are aliased (and allow "aliased" keyword).
>>>> 
>>>> None of the above are likely to happen, I suspect.
>>>
>>> Even if we, all the Ada community, really wanted it? 
>> 
>> The Ada community wants compatibility with older versions of the
>> language.  What I described above is not compatible.
>
> I don't directly see what and why.

I meant that if all types are tagged, then we should remove the "tagged"
keyword from the language (obviously incompatible) and eliminate the
"all tagged parameters are aliased" rule (incompatible).  Oh, by the
way, eliminate "tagged types are pass-by-ref" (incompatible).

> We could make all types "tagged" with non-stored tags. The keyword "tagged"
> would mean a stored tag + by-reference semantics. This looks fully backward
> compatible to me, at first glance.

OK, that might work.  I don't see anything fundamentally wrong with it
"at first glance".  ;-)  I suppose abstract subprograms would cause
minor troubles...

Perhaps you should push for this in Ada 2015 or 2025.  ;-)

> As for legacy exceptions, we should choose a model first. Is End_Error a
> type (derived from Root_Exception) or a value of Root_Exception?

End_Error should be a type (in this fantasy version of Ada).

- Bob



  reply	other threads:[~2007-01-19 20:17 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-01-18  9:24 Limited_Controlled, orthogonality and related issues Maciej Sobczak
2007-01-18 12:00 ` Ludovic Brenta
2007-01-18 12:33   ` AW: " Grein, Christoph (Fa. ESG)
2007-01-18 16:25   ` Robert A Duff
2007-01-18 17:02 ` Adam Beneschan
2007-01-18 17:16   ` Adam Beneschan
2007-01-19  1:02     ` Robert A Duff
2007-01-19  7:38       ` Maciej Sobczak
2007-01-19  9:05     ` Dmitry A. Kazakov
2007-01-19 17:04       ` Adam Beneschan
2007-01-19  1:01   ` Robert A Duff
2007-01-19  9:57   ` Stephen Leake
2007-01-18 19:03 ` Jeffrey Carter
2007-01-19  7:48 ` Randy Brukardt
2007-01-19 16:46   ` Adam Beneschan
2007-01-19 15:29 ` Robert A Duff
2007-01-19 16:31   ` Dmitry A. Kazakov
2007-01-19 16:36     ` Robert A Duff
2007-01-19 18:26       ` Dmitry A. Kazakov
2007-01-19 20:17         ` Robert A Duff [this message]
2007-01-20 10:14           ` Dmitry A. Kazakov
2007-01-20 14:44             ` Robert A Duff
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox