From: "Jeffrey R. Carter" <spam.jrcarter.not@spam.acm.org>
Subject: Re: Generic package parameters not externally visible : what's the rational ?
Date: Tue, 27 Oct 2009 15:19:11 -0700
Date: 2009-10-27T15:19:11-07:00 [thread overview]
Message-ID: <hc7rkp$qu6$1@news.tornevall.net> (raw)
In-Reply-To: <3084820f-4799-4555-b309-92c8ff7e2436@m16g2000yqc.googlegroups.com>
Hibou57 (Yannick Duch�ne) wrote:
>
> One good reason to miss it, is when a package A has another package B
> in its formal parameters and this formal package parameter (B) is it
> self generic, and A needs to use some type which were given to
> instantiate the package B. This is an example case where the parameter
> which were used to instantiate a package, are not accessible from a
> point they are needed (if P instantiated B, of course P has access to
> parameters used to instantiate B, but this does not help A, it if ever
> itself also need these).
But Ada allows a generic to reference the unknown generic parameters of its
formal package parameters. See ARM 12.7.
> To come back to the first point : one other good reason apart of a
> generic package having another generic in its parameters, is when a
> generic package B may also be instantiated in a package A, which will
> then be use in another package C, which does not have direct access to
> the parameters used to instantiate the package (let say it was in a
> third package which A deeply rely on one, but not C). Then, one of the
> more natural way to access these, if ever needed for other stuff in C,
> is the generic package instance B itself.
Then C clearly has a dependency on this 4th pkg (shall we call it D?), and that
dependency should be made explicit, by including "with D;" on C.
--
Jeff Carter
"We'll make Rock Ridge think it's a chicken
that got caught in a tractor's nuts!"
Blazing Saddles
87
next prev parent reply other threads:[~2009-10-27 22:19 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-26 8:58 Generic package parameters not externally visible : what's the rational ? Hibou57 (Yannick Duchêne)
2009-10-26 11:05 ` Ludovic Brenta
2009-10-26 15:02 ` Robert A Duff
2009-10-27 1:06 ` Hibou57 (Yannick Duchêne)
2009-10-26 14:56 ` Robert A Duff
2009-10-27 3:03 ` Hibou57 (Yannick Duchêne)
2009-10-27 21:08 ` Randy Brukardt
2009-10-27 21:36 ` Jeffrey R. Carter
2009-10-27 22:03 ` Hibou57 (Yannick Duchêne)
2009-10-27 22:19 ` Jeffrey R. Carter [this message]
2009-10-28 19:07 ` Randy Brukardt
2009-10-29 12:18 ` Hibou57 (Yannick Duchêne)
2009-10-29 22:56 ` Randy Brukardt
2009-10-30 0:10 ` Hibou57 (Yannick Duchêne)
2009-10-27 22:04 ` Hibou57 (Yannick Duchêne)
2009-10-27 23:37 ` Robert A Duff
2009-10-27 23:41 ` Jeffrey R. Carter
2009-10-27 23:34 ` Robert A Duff
2009-10-28 2:19 ` Hibou57 (Yannick Duchêne)
2009-10-28 19:12 ` Randy Brukardt
2009-10-29 7:34 ` Stephen Leake
2009-10-29 12:21 ` Hibou57 (Yannick Duchêne)
2009-10-29 13:10 ` AdaMagica
2009-10-29 15:11 ` Georg Bauhaus
2009-10-29 19:28 ` Jeffrey R. Carter
2009-10-29 20:27 ` Georg Bauhaus
2009-10-30 10:30 ` Stephen Leake
2009-10-30 17:53 ` Ludovic Brenta
2009-10-31 2:10 ` Hibou57 (Yannick Duchêne)
2009-10-30 5:19 ` Hibou57 (Yannick Duchêne)
2009-10-28 9:09 ` Dmitry A. Kazakov
2009-10-28 19:19 ` Randy Brukardt
2009-10-29 8:36 ` Dmitry A. Kazakov
2009-10-29 23:03 ` Randy Brukardt
2009-10-30 8:51 ` Dmitry A. Kazakov
2009-10-30 10:25 ` Stephen Leake
2009-10-30 19:32 ` Dmitry A. Kazakov
2009-10-31 2:06 ` Hibou57 (Yannick Duchêne)
2009-10-31 9:14 ` Dmitry A. Kazakov
2009-11-03 8:25 ` Hibou57 (Yannick Duchêne)
2009-11-03 9:59 ` Dmitry A. Kazakov
2009-11-05 10:38 ` Hibou57 (Yannick Duchêne)
2009-11-05 11:00 ` Dmitry A. Kazakov
2009-11-05 12:16 ` Hibou57 (Yannick Duchêne)
2009-11-05 14:09 ` Dmitry A. Kazakov
2009-11-06 12:19 ` Hibou57 (Yannick Duchêne)
2009-11-06 13:27 ` Dmitry A. Kazakov
2009-10-31 2:08 ` Hibou57 (Yannick Duchêne)
2009-10-31 12:44 ` Stephen Leake
2009-11-01 11:37 ` 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