comp.lang.ada
 help / color / mirror / Atom feed
From: Brian Rogoff <bpr@shell5.ba.best.com>
Subject: Re: controlled type in generic package?
Date: Fri, 09 Feb 2001 19:46:22 GMT
Date: 2001-02-09T19:46:22+00:00	[thread overview]
Message-ID: <Pine.BSF.4.21.0102091136160.18552-100000@shell5.ba.best.com> (raw)
In-Reply-To: <3A83C58F.8D891740@bton.ac.uk>

On Fri, 9 Feb 2001, John English wrote:
> Florian Weimer wrote:
> > It's just an ordinary mixin construction.  Of course, there some
> > syntactical overhead involved, but it's straightforward.
> 
> Not hard to do, but annoying. A type declaration for the controlled
> type, a separate type declaration for the derived type with a controlled
> component added in, and if the controlled component's primitives need to
> look at any components of the original record, some magic spells involving
> access discriminants and view conversions.
> 
> This might not bother you, but it feels like acrobatics and atrocities to me.
> IMHO this is straightforward in the same sense as OOP in C is straightforward:
> "It's just an ordinary pointer-to-array-of-functions construction. Of course,
> there's some syntactical overhead involved, but it's straightforward." :-)

Maybe even worse, since the OOP in C idiom is entirely explicit, whereas 
Controlledness has some implicitness about it. 

Oh well, I agree it's annoying, but I'm not even sure it's a misfeature. Any 
better ideas on a design for finalization, assuming you can't change Ada 
dramatically? 

-- Brian





  reply	other threads:[~2001-02-09 19:46 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-02-06 11:06 controlled type in generic package? Nils Priebe
     [not found] ` <slrn97vtf5.ho.lutz@taranis.iks-jena.de>
     [not found]   ` <95q19j$9d$1@usenet.rational.com>
2001-02-07 10:11     ` Lutz Donnerhacke
2001-02-07 21:57       ` Mark Lundquist
     [not found]   ` <95p2ab$463$1@nnrp1.deja.com>
2001-02-07 15:08     ` Jean-Pierre Rosen
2001-02-08 15:41       ` Ted Dennison
2001-02-08 18:21         ` Jean-Pierre Rosen
2001-02-08 16:31       ` Florian Weimer
2001-02-08 21:10       ` Brian Rogoff
2001-02-09 10:39         ` Florian Weimer
2001-02-09 17:02           ` Brian Rogoff
2001-02-09 18:45             ` Florian Weimer
2001-02-13  0:32           ` Nick Roberts
2001-02-14  0:30             ` Jon S Anthony
     [not found]               ` <x7vg0hd20cm.fsf@smaug.pushface.org>
     [not found]                 ` <hovk6.96$aw5.304@www.newsranger.com>
2001-02-23 20:50                   ` Simon Wright
     [not found]     ` <95q1fa$9e$1@usenet.rational.com>
2001-02-07 15:28       ` Ted Dennison
2001-02-07 16:29         ` Brian Rogoff
     [not found]           ` <3A82A66D.49DE7EBD@bton.ac.uk>
2001-02-08 15:15             ` Robert Dewar
2001-02-08 16:56             ` Florian Weimer
2001-02-09 10:25               ` John English
2001-02-09 19:46                 ` Brian Rogoff [this message]
2001-02-07 18:52         ` Pat Rogers
2001-02-07 19:23           ` Pat Rogers
2001-02-07 19:50             ` Ted Dennison
2001-02-07 22:52         ` Jean-Pierre Rosen
2001-02-08  9:36           ` dmitry6243
2001-02-09  8:51             ` Jean-Pierre Rosen
2001-02-09 12:28               ` dmitry6243
2001-02-08 19:58           ` Mark Lundquist
2001-02-10  9:54           ` Thomas Wolf
replies disabled

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