comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Enforcing initialization protocol for protected type
Date: Fri, 11 Sep 2009 17:24:57 -0500
Date: 2009-09-11T17:24:57-05:00	[thread overview]
Message-ID: <h8eiq8$sjb$1@munin.nbi.dk> (raw)
In-Reply-To: 1rusjydws2ko.rpfwzoyv4bzj$.dlg@40tude.net

"Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote in message 
news:1rusjydws2ko.rpfwzoyv4bzj$.dlg@40tude.net...
...
> P.S. It looks like a language design bug. If allowed then at least it
> should have been like:
>
>   Obj: subtype Rec (new Disc);
>      -- An anonymous subtype is declared for Obj

I think most of us consider "coextensions" a language design bug. Indeed, 
that is about the nicest thing I can say about them. There are many of us 
who think that allocators of anonymous access types should simply be illegal 
(in all contexts), because what they mean currently depends so heavily on 
context and that makes them a maintenance nightmare (at best).

Morevoer, the rules for coextensions are a constantly shifting complex 
morrass. So, if you want to give yourself and your vendor a constant supply 
of headaches, then by all means use coextensions. Otherwise, I highly 
suggest you avoid them.

(For the record, Janus/Ada does not support coextensions -- recent versions 
make the allocators illegal since they don't have the correct semantics. 
Implementation is currently scheduled for approximately the year 2092. ;-)

                                               Randy.





  reply	other threads:[~2009-09-11 22:24 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-07 15:15 Enforcing initialization protocol for protected type Maciej Sobczak
2009-09-07 17:01 ` Georg Bauhaus
2009-09-07 20:19   ` Maciej Sobczak
2009-09-10 17:07     ` Georg Bauhaus
2009-09-11  5:01     ` AdaMagica
2009-09-11  9:03       ` Dmitry A. Kazakov
2009-09-11 15:25         ` AdaMagica
2009-09-11 16:27           ` Dmitry A. Kazakov
2009-09-11 22:24             ` Randy Brukardt [this message]
2009-09-12  8:44               ` Dmitry A. Kazakov
2009-09-10 16:39 ` Per Sandberg
2009-09-14 21:15   ` Adam Beneschan
2009-09-15  0:27     ` Randy Brukardt
replies disabled

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