comp.lang.ada
 help / color / mirror / Atom feed
From: Brad Moore <brad.moore@shaw.ca>
Subject: Re: Controlled types as interfaces
Date: Wed, 20 Aug 2014 07:56:15 -0600
Date: 2014-08-20T07:56:15-06:00	[thread overview]
Message-ID: <1O1Jv.11735$8G3.5145@fx12.iad> (raw)
In-Reply-To: <lt25jf$m32$2@speranza.aioe.org>

On 14-08-20 06:50 AM, Victor Porton wrote:
> Dmitry A. Kazakov wrote:
>
>>> A similar thing can be made with Root_Stream_Type making it derived from
>>> Root_Stream_Interface interface.
>>
>> Yes, of course. It was proposed multiple times, as I remember. But
>> rejected as "not backward compatible." Though the compatibility issue was
>> quite minor if any.
>
> We can make Root_Stream_Type a descendant of Root_Stream_Interface.
>
> So old code can derive from Root_Stream_Type and this is backward
> compatible.
>

There is an amendment AI for this already, for Ada 202x.

See AI12-0023-1
( 
http://www.ada-auth.org/cgi-bin/cvsweb.cgi/ai12s/ai12-0023-1.txt?rev=1.3&raw=Y 
)

This AI has not been rejected (yet), as all amendment AI's that are 
proposals for Ada 202X are only proposals at this point. At some point 
in the future when it comes time to start selecting which proposals are 
worth having, this AI may or may not make the cut.

The incompatibilities are described in the discussion section of the AI, 
but these had to do with  problems of changing Root_Stream_Type into an 
interface.

However, I believe you are correct that if we modified Root_Stream_Type 
to remain an abstract type that inherits from a Root_Stream_Interface, 
then these incompatibilities would not exist.

Backward incompatibilities are to be avoided if at all possible, so I
think if we were to go forward with this AI, your suggestion to make 
Root_Stream_Type inherit from a Root_Stream_Interface, might be the way 
to go.

Brad


  parent reply	other threads:[~2014-08-20 13:56 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-20  1:05 Controlled types as interfaces Victor Porton
2014-08-20  1:09 ` Victor Porton
2014-08-20  7:29   ` Dmitry A. Kazakov
2014-08-20 12:49     ` Victor Porton
2014-08-20 13:47       ` Dmitry A. Kazakov
2014-08-21 23:16         ` Randy Brukardt
2014-08-29 15:01           ` Robert A Duff
2014-08-29 23:54             ` Randy Brukardt
2014-08-20 12:50     ` Victor Porton
2014-08-20 13:38       ` Dmitry A. Kazakov
2014-08-20 13:56       ` Brad Moore [this message]
2014-08-21 22:48         ` Randy Brukardt
2014-08-20  1:41 ` Victor Porton
replies disabled

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