comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Generics with concrete and class-wide types
Date: Tue, 1 Apr 2008 15:10:13 -0500
Date: 2008-04-01T15:10:13-05:00	[thread overview]
Message-ID: <fsu4r8$b53$1@jacob-sparre.dk> (raw)
In-Reply-To: f0879dc0-7498-48f7-8d44-9856316d35ce@s19g2000prg.googlegroups.com

"Adam Beneschan" <adam@irvine.com> wrote in message
news:f0879dc0-7498-48f7-8d44-9856316d35ce@s19g2000prg.googlegroups.com...
...
> What's missing here is a way to specify a generic formal subprogram
> that must be a primitive operation of some tagged type (possibly a
> generic formal tagged type),

No, it's not missing. That's what abstract formal subprograms are for. See
specifically 12.6(8.4-8.5/2).

I'm not sure that helps in this case, but feel free to try. ;-).

                       Randy.

P.S. These were totally my idea, originally in the context of
Generic_Dispatching_Constructor (which I also dreamt up after a conversation
with Steve Baird and Tucker Taft on the factory problem). I off-handedly
suggested that the "magic" embodied in the original version of that generic
could be given language status, and I was stunned to find that everyone
thought that was a good idea. (Especially after the death of defaults for
generic formal parameters.) And voila! Abstract formal subprograms. I'm glad
that you like them. ;-)





  reply	other threads:[~2008-04-01 20:10 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-31 20:22 Generics with concrete and class-wide types Maciej Sobczak
2008-03-31 23:38 ` Adam Beneschan
2008-04-01 20:10   ` Randy Brukardt [this message]
2008-04-01 21:17     ` Adam Beneschan
2008-04-01  0:23 ` Randy Brukardt
2008-04-01  3:57   ` Eric Hughes
2008-04-01  6:58     ` christoph.grein
2008-04-01  7:22 ` Georg Bauhaus
2008-04-01  9:42 ` Dmitry A. Kazakov
2008-04-01  9:51   ` Maciej Sobczak
2008-04-01 10:53     ` Dmitry A. Kazakov
replies disabled

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