comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Proposal: Auto-allocation of Indefinite Objects
Date: Sat, 1 Aug 2020 22:56:24 +0200	[thread overview]
Message-ID: <rg4ktl$i5a$1@gioia.aioe.org> (raw)
In-Reply-To: f5f6a6ab-b7ac-4e0a-8383-f388e94842d2n@googlegroups.com

On 01/08/2020 22:35, Stephen Davies wrote:
> On Saturday, 1 August 2020 at 13:58:10 UTC+1, Dmitry A. Kazakov wrote:
>> On 01/08/2020 13:22, Stephen Davies wrote:
>>> type Node_Type (<>) is record
>>> Item : Element_Type;
>>> Prev : Node_Ptr_Type;
>>> Next : Node_Ptr_Type;
>>> end record;
>>> The rules for such records would be the same as for discriminated ones,
>>> except that instead of usages needing to provide values for discriminants,
>>> they would need to provide values for indefinite components.
>> 1. There is no discriminants for cases when Item is T'Class.
>> 2. You cannot get discriminant from the value in the case of Rosen trick...
>> 3. Copying is involved. There should be none, especially for limited types...
> I'm mainly talking about situations in which there doesn't need to be a
> discriminant at all, e.g. when Element_Type is an indefinite non-limited
> generic parameter. In other words, Node_Type would then also be indefinite,
> but not discriminated.

In my view all indefinite types are discriminated, though some 
discriminants are anonymous or represented by attributes, per language 
design irregularities. E.g. T'Class is discriminated by the type tag. 
Array bounds must clearly be discriminants etc. Each constraint must be 
expressed in terms of discriminants.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de

  reply	other threads:[~2020-08-01 20:56 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-03 22:48 Proposal: Auto-allocation of Indefinite Objects Stephen Davies
2020-04-03 23:45 ` Stephen Leake
2020-04-04 10:54   ` Jeffrey R. Carter
2020-04-04 20:55     ` Stephen Davies
2020-04-04  8:31 ` Dmitry A. Kazakov
2020-07-27  7:47 ` Yannick Moy
2020-07-27  9:21   ` J-P. Rosen
2020-07-27  9:49     ` Dmitry A. Kazakov
2020-07-27 17:48   ` Brian Drummond
2020-07-27 20:02     ` Dmitry A. Kazakov
2020-07-28 14:28       ` Brian Drummond
2020-07-28 14:59         ` Dmitry A. Kazakov
2020-07-29 15:33           ` Brian Drummond
2020-07-29 16:20             ` Dmitry A. Kazakov
2020-07-30 13:37               ` Stephen Davies
2020-07-30 14:23                 ` Dmitry A. Kazakov
2020-07-30 17:04               ` Brian Drummond
2020-07-30 18:28                 ` Dmitry A. Kazakov
2020-08-10  0:39                   ` Randy Brukardt
2020-08-10  8:57                     ` Dmitry A. Kazakov
2020-08-20  0:10                       ` Randy Brukardt
2020-08-20 17:49                         ` Dmitry A. Kazakov
2020-08-20 20:19                           ` Dennis Lee Bieber
2020-08-20 23:33                             ` Randy Brukardt
2020-08-21  6:45                               ` Dmitry A. Kazakov
2020-08-23  4:52                                 ` Randy Brukardt
2020-08-23 12:28                                   ` Dmitry A. Kazakov
2020-08-20 23:30                           ` Randy Brukardt
2020-08-21  6:46                             ` Dmitry A. Kazakov
2020-08-23  4:48                               ` Randy Brukardt
2020-08-23 12:29                                 ` Dmitry A. Kazakov
2020-08-10  0:31               ` Randy Brukardt
2020-08-10  8:58                 ` Dmitry A. Kazakov
2020-08-20  0:13                   ` Randy Brukardt
2020-08-20 17:49                     ` Dmitry A. Kazakov
2020-08-20 23:25                       ` Randy Brukardt
2020-08-21  7:08                         ` Dmitry A. Kazakov
2020-08-23  5:03                           ` Randy Brukardt
2020-08-23 12:28                             ` Dmitry A. Kazakov
2020-07-27 20:31     ` Jeffrey R. Carter
2020-07-31  9:25 ` Stephen Davies
2020-07-31 10:20   ` Dmitry A. Kazakov
2020-08-01 11:22     ` Stephen Davies
2020-08-01 12:58       ` Dmitry A. Kazakov
2020-08-01 20:35         ` Stephen Davies
2020-08-01 20:56           ` Dmitry A. Kazakov [this message]
2020-09-03  4:30 ` linda white
replies disabled

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