comp.lang.ada
 help / color / mirror / Atom feed
From: Niklas Holsti <niklas.holsti@tidorum.invalid>
Subject: Re: Ada Successor Language
Date: Tue, 26 Jun 2018 23:49:26 +0300
Date: 2018-06-26T23:49:26+03:00	[thread overview]
Message-ID: <fpfn6nF9t5gU1@mid.individual.net> (raw)
In-Reply-To: <pgu6ui$1vo1$1@gioia.aioe.org>

On 18-06-26 23:16 , J-P. Rosen wrote:
> Le 25/06/2018 à 16:03, Niklas Holsti a écrit :
>> So it says in RM 3.4(5/2), but even the Annotated RM has no motivation
>> for it, and I don't see why Ada could not assume a null extension when
>> the type is tagged. Can someone explain why the RM is so strict on this?
>>
>> (In fact, it seems to me that Ada could allow untagged record extensions
>> as well; the effect would be the same as for tagged ones, but no 'Class
>> would be formed, and no class-wide programming or dynamic dispatch could
>> be used, so all such types would be static. It would be semantically
>> equivalent to aggregation of a component of the parent type with the
>> extension components, but would allow direct access to the inherited
>> components from the parent type. This could be a useful separation of
>> extensions from tags.)
> You can achieve exactly this with a tagged type and Restriction
> (No_Dispatch)

Not exactly that, no: you would still have to declare the types as 
tagged, and the objects of these types would still have to store the tag 
value somewhere, at least for use when X'Tag is taken for a controlling 
parameter X of an inherited (non-overridden) operation.

Moreover, Restriction (No_Dispatch) is partition-wide (or so I believe, 
because "tailored" run-time systems are mentioned in that part of the 
RM, H.4). Thus it would not let one use both tagged record extensions 
and untagged record extensions in the same program partition.

In fact the only similarity I can see between Restriction (No_Dispatch) 
and the suggested extensibility of non-tagged records is that the latter 
(as I suggested it) would also not allow dispatching -- but preventing 
dispatch was not the point of the suggestion.

Combining extension of untagged records with Dmitry's suggestion for 
untagged class-wide types would allow dispatch (but not re-dispatch) for 
such extensions, which IMO shows that Restriction (No_Dispatch) is 
independent of untagged record extensions.

-- 
Niklas Holsti
Tidorum Ltd
niklas holsti tidorum fi
       .      @       .


  reply	other threads:[~2018-06-26 20:49 UTC|newest]

Thread overview: 212+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-02  4:43 Ada Successor Language Shark8
2018-06-02  6:52 ` Luke A. Guest
2018-06-04  2:27   ` Dan'l Miller
2018-06-04 21:06   ` Dan'l Miller
2018-06-05 12:31     ` Lucretia
2018-06-02  8:12 ` Dmitry A. Kazakov
2018-06-02 12:14   ` Mehdi Saada
2018-06-02 12:43     ` Dmitry A. Kazakov
2018-06-03  7:39       ` Safety of user-defined operators (was: Ada Successor Language) G.B.
2018-06-03  7:58         ` Safety of user-defined operators Dmitry A. Kazakov
2018-06-02 12:57     ` Ada Successor Language Luke A. Guest
2018-06-04 21:17       ` Randy Brukardt
2018-06-02 13:48 ` Dan'l Miller
2018-06-03 10:01 ` ric.wai88
2018-06-03 13:04   ` Dan'l Miller
2018-06-03 13:09   ` Shark8
2018-06-03 15:14     ` Lucretia
2018-06-03 15:09   ` Lucretia
2018-06-03 15:14     ` ric.wai88
2018-06-03 15:16       ` Lucretia
2018-06-03 15:22         ` ric.wai88
2018-06-03 15:31           ` Lucretia
2018-06-03 15:41             ` ric.wai88
2018-06-03 15:54     ` Dmitry A. Kazakov
2018-06-03 16:43     ` Jeffrey R. Carter
2018-06-04  5:01       ` Jacob Sparre Andersen
2018-06-04  7:19         ` Simon Wright
2018-06-04  7:44           ` Dmitry A. Kazakov
2018-06-04 13:53             ` Björn Lundin
2018-06-04 16:54             ` G. B.
2018-06-04 19:37               ` Dmitry A. Kazakov
2018-06-04 22:12                 ` G.B.
2018-06-05  7:18                   ` Dmitry A. Kazakov
2018-06-04 13:25           ` Lucretia
2018-06-04 14:08           ` Dan'l Miller
2018-06-04 14:55             ` Lucretia
2018-06-26 13:58         ` jm.tarrasa
2018-06-26 18:44           ` Jacob Sparre Andersen
2018-06-03 18:44     ` Björn Lundin
2018-06-03 19:37     ` Paul Rubin
2018-06-03 23:56       ` Dan'l Miller
2018-06-04  0:24         ` Paul Rubin
2018-06-04  0:41           ` Ben Bacarisse
2018-06-04  2:01         ` ric.wai88
2018-06-05 16:46     ` Alejandro R. Mosteo
2018-06-06 21:02       ` gautier_niouzes
2018-06-08 10:03         ` Alejandro R. Mosteo
2018-06-04  3:19 ` John Smith
2018-06-04 20:56 ` Mehdi Saada
2018-06-04 21:14 ` Paul Rubin
2018-06-05  0:17   ` Shark8
2018-06-05 16:01     ` Dan'l Miller
2018-06-18  3:31     ` Dan'l Miller
2018-06-18  6:58       ` Björn Lundin
2018-06-18 12:33         ` Dan'l Miller
2018-06-18 19:16       ` Niklas Holsti
2018-06-18 19:28         ` Dan'l Miller
2018-06-18 20:22         ` Jeffrey R. Carter
2018-06-18 20:45           ` Niklas Holsti
2018-06-18 21:20             ` Shark8
2018-06-18 21:27               ` ric.wai88
2018-06-18 21:51                 ` Shark8
2018-06-22 11:14                 ` Alejandro R. Mosteo
2018-06-18 22:23               ` Dmitry A. Kazakov
2018-06-18 22:36                 ` Paul Rubin
2018-06-19  0:10                   ` Dan'l Miller
2018-06-19 20:32                     ` Paul Rubin
2018-06-19 20:37                       ` Dan'l Miller
2018-06-20  8:30                     ` Marius Amado-Alves
2018-06-19  7:58                   ` Dmitry A. Kazakov
2018-06-19 19:19                     ` Paul Rubin
2018-06-19 19:30                       ` Dan'l Miller
2018-06-19 19:39                       ` Dmitry A. Kazakov
2018-06-19 20:30                         ` Paul Rubin
2018-06-20  7:13                           ` Simon Wright
2018-06-29 20:11                             ` Randy Brukardt
2018-06-20  7:59                           ` Dmitry A. Kazakov
2018-06-22 11:14                             ` Alejandro R. Mosteo
2018-06-23 19:21                             ` Jacob Sparre Andersen
2018-06-24  8:34                               ` Dmitry A. Kazakov
2018-06-24  9:19                                 ` J-P. Rosen
2018-06-25  7:00                                   ` briot.emmanuel
2018-06-25  8:23                                   ` Marius Amado-Alves
2018-06-29 20:20                                 ` Randy Brukardt
2018-06-25  8:58                               ` Alejandro R. Mosteo
2018-06-25  9:19                                 ` Jeffrey R. Carter
2018-06-25 12:41                                 ` J-P. Rosen
2018-06-25 14:03                                   ` Niklas Holsti
2018-06-25 14:21                                     ` Dmitry A. Kazakov
2018-06-25 14:44                                       ` J-P. Rosen
2018-06-25 15:19                                         ` Dmitry A. Kazakov
2018-06-25 16:21                                           ` Dan'l Miller
2018-06-26  7:44                                             ` Dmitry A. Kazakov
2018-06-26 13:59                                               ` Dan'l Miller
2018-06-26 14:05                                                 ` ric.wai88
2018-06-26 15:38                                                   ` Simon Wright
2018-06-26 16:50                                                     ` Dan'l Miller
2018-06-26 17:25                                                       ` Dmitry A. Kazakov
2018-06-26 18:47                                                         ` Dan'l Miller
2018-06-26 19:29                                                           ` Dmitry A. Kazakov
2018-06-26 20:03                                                             ` Dan'l Miller
2018-06-26 20:59                                                               ` Dmitry A. Kazakov
2018-06-29  3:11                                                               ` Paul Rubin
2018-06-29  3:37                                                                 ` Dan'l Miller
2018-06-29  3:48                                                                   ` Paul Rubin
2018-06-29  7:29                                                                     ` Dmitry A. Kazakov
2018-06-29  7:20                                                                 ` Dmitry A. Kazakov
2018-06-29 13:25                                                                   ` Dan'l Miller
2018-06-29 17:39                                                                     ` Dmitry A. Kazakov
2018-06-29 19:46                                                                       ` Dan'l Miller
2018-06-29 21:36                                                                         ` Dmitry A. Kazakov
2018-06-29 22:21                                                                           ` Dan'l Miller
2018-06-26 21:15                                                     ` Niklas Holsti
2018-06-27  7:07                                                       ` Dmitry A. Kazakov
2018-06-26 14:17                                                 ` Dmitry A. Kazakov
2018-06-26 14:42                                                   ` Dan'l Miller
2018-06-26 14:47                                                     ` Dmitry A. Kazakov
2018-06-26 21:01                                                 ` Niklas Holsti
2018-06-26 22:03                                                   ` Dan'l Miller
2018-06-27  2:28                                                     ` Dan'l Miller
2018-06-27  2:58                                                       ` Dan'l Miller
2018-06-27  7:15                                                     ` Dmitry A. Kazakov
2018-06-27 16:33                                                       ` Dan'l Miller
2018-06-27 19:11                                                         ` Dmitry A. Kazakov
2018-06-25 18:05                                           ` J-P. Rosen
2018-06-26  7:42                                             ` Dmitry A. Kazakov
2018-06-25 19:32                                         ` Niklas Holsti
2018-06-25 19:16                                       ` Niklas Holsti
2018-06-25 20:13                                         ` Dan'l Miller
2018-06-25 20:52                                           ` Niklas Holsti
2018-06-26  7:57                                             ` Dmitry A. Kazakov
2018-06-26 20:16                                     ` J-P. Rosen
2018-06-26 20:49                                       ` Niklas Holsti [this message]
2018-06-26 21:09                                         ` Dmitry A. Kazakov
2018-06-29 20:35                                     ` Randy Brukardt
2018-06-25 14:18                                   ` Alejandro R. Mosteo
2018-06-29 20:47                                     ` Randy Brukardt
2018-06-29 20:23                                 ` Randy Brukardt
2018-07-02  9:37                                   ` Alejandro R. Mosteo
2018-06-29 20:17                             ` Randy Brukardt
2018-06-29 22:11                               ` Dmitry A. Kazakov
2018-06-29 22:36                                 ` Randy Brukardt
2018-06-30  8:34                                   ` Dmitry A. Kazakov
2018-06-19 21:07                         ` Dan'l Miller
2018-06-20  7:33                           ` Dmitry A. Kazakov
2018-06-22 11:13                             ` Alejandro R. Mosteo
2018-06-22 16:02                               ` Dmitry A. Kazakov
2018-06-25  8:20                                 ` Marius Amado-Alves
2018-06-26 17:20                                   ` Shark8
2018-06-26 17:42                                     ` Dmitry A. Kazakov
2018-06-25  8:21                                 ` Paul Rubin
2018-06-25  9:12                                   ` Dmitry A. Kazakov
2018-06-22 15:18                             ` Dan'l Miller
2018-06-22 15:49                               ` Dmitry A. Kazakov
2018-06-19  2:45                 ` Shark8
2018-06-19  7:50                   ` Dmitry A. Kazakov
2018-06-19 15:35                 ` Shark8
2018-06-19  7:35               ` G. B.
2018-06-19 11:36                 ` Dan'l Miller
2018-06-19 15:37                 ` Shark8
2018-06-19 17:07                   ` G. B.
2018-06-29 20:05               ` Randy Brukardt
2018-06-29 23:18                 ` Shark8
2018-07-03 21:39                   ` Randy Brukardt
2018-06-19  0:20         ` Lucretia
2018-06-19 11:51           ` Dan'l Miller
2018-06-19 13:54             ` Dan'l Miller
2018-06-06  9:13   ` Niklas Holsti
2018-06-08 16:28     ` Dan'l Miller
2018-06-08 16:56       ` Mehdi Saada
2018-06-08 17:33       ` Shark8
2018-06-12  1:51         ` Dan'l Miller
2018-06-12 15:23           ` Luke A. Guest
2018-06-12 15:44             ` Dan'l Miller
2018-06-12 17:59               ` Luke A. Guest
2018-06-13 16:03                 ` Dan'l Miller
2018-06-13 16:20                   ` Luke A. Guest
2018-06-13 18:04               ` G. B.
2018-06-13  5:53             ` Shark8
2018-06-13  6:57               ` Simon Wright
2018-06-13 18:58                 ` Shark8
2018-06-13 19:19                   ` Dmitry A. Kazakov
2018-06-14  3:19                     ` Lucretia
2018-06-14  7:26                       ` Dmitry A. Kazakov
2018-06-14 11:25                         ` Lucretia
2018-06-14 12:22                           ` Dmitry A. Kazakov
2018-06-15  3:35                             ` Lucretia
2018-06-15  7:20                               ` Dmitry A. Kazakov
2018-06-15 16:03                                 ` Lucretia
2018-06-15 20:50                                   ` Dennis Lee Bieber
2018-06-15 11:38                     ` jm.tarrasa
2018-06-15 12:06                       ` Dmitry A. Kazakov
2018-06-15 15:42                         ` J-P. Rosen
2018-06-15 17:30                           ` Simon Wright
2018-06-15 17:55                           ` jm.tarrasa
2018-06-15 19:58                             ` Shark8
2018-06-16  7:04                               ` Simon Wright
2018-06-16  9:14                               ` jm.tarrasa
2018-06-16 10:22                                 ` Simon Wright
2018-06-16 10:50                                   ` Jeffrey R. Carter
2018-06-16 11:32                                 ` Dmitry A. Kazakov
2018-06-13 21:15                   ` Paul Rubin
2018-06-14  3:20                     ` Lucretia
2018-06-14  3:27                     ` Shark8
2018-06-14  5:17                       ` Paul Rubin
2018-06-14 21:00                   ` Randy Brukardt
2018-06-15  3:41                     ` Lucretia
2018-06-15  7:08                       ` Dmitry A. Kazakov
2018-06-15  7:15                     ` Simon Wright
2018-06-14  8:51                 ` Marius Amado-Alves
2018-06-08 20:38 ` Mehdi Saada
2018-06-13  5:46   ` Shark8
replies disabled

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