comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Ripple effect
Date: Tue, 5 Sep 2006 09:23:22 +0200
Date: 2006-09-05T09:23:21+02:00	[thread overview]
Message-ID: <apkh8ixcr085.1n4nke0eagzuh.dlg@40tude.net> (raw)
In-Reply-To: fm5Lg.947292$084.573762@attbi_s22

On Tue, 05 Sep 2006 02:33:47 GMT, Jeffrey R. Carter wrote:

> OK. In the discussion, your language used "use" in context clauses as 
> equivalent to Ada's "with" (which sounds like a good idea), and you 
> didn't show any equivalent to Ada's "use". I thought I recalled you 
> saying that the language didn't have one, but I guess IDRC.
> 
> If you do have an equivalent to Ada's "use", maybe it should be called 
> "see".

You don't need it, if the language offers constructs to handle namespaces,
especially to compose them out of existing ones. Then you could merge
specifications of several packages into a new specification and re-use it
where needed. 

>> Yes.  Do you think it should be otherwise? [transitive context clauses]
> 
> It seems awkward. We're working on a project. I create package B, which 
> has "with A;" on it. I thought B would need it, but I was wrong, and 
> forgot to remove it. You're developing C and need to use B, so you have 
> "with B;" on C. Then you realize you need to use A and write some code 
> that references A. You forget to put "with A;" on C, but it compiles OK 
> because B references A. Then I clean up B and remove the reference to A 
> from it. Now C doesn't compile. That seems undesirable.

You complain that missing "with" could be a lie, but it so anyway. I think
that management of non-transitive "with" is an unnecessary burden. If you
have 20+ packages, then it becomes unrealistic to inspect all with-clauses
each time you change something.

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



  reply	other threads:[~2006-09-05  7:23 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-23 22:29 Ripple effect Jeffrey R. Carter
2006-08-24  9:21 ` Maciej Sobczak
2006-08-24 23:39   ` Jeffrey R. Carter
2006-08-25  7:03     ` Maciej Sobczak
2006-08-24 18:22 ` Adam Beneschan
2006-08-24 23:40   ` Jeffrey R. Carter
2006-09-04 13:52 ` Robert A Duff
2006-09-04 15:15   ` Jeffrey R. Carter
2006-09-04 18:06     ` Robert A Duff
2006-09-05  2:33       ` Jeffrey R. Carter
2006-09-05  7:23         ` Dmitry A. Kazakov [this message]
2006-09-05 16:28           ` Robert A Duff
2006-09-05 16:23         ` Robert A Duff
2006-09-05 21:36           ` Jeffrey R. Carter
2006-09-07 18:18             ` Robert A Duff
2006-09-08 22:02               ` Jeffrey R. Carter
2006-09-06  0:10           ` Randy Brukardt
2006-09-07 18:30             ` Robert A Duff
2006-09-07 21:21               ` Simon Wright
2006-09-08  2:08               ` Randy Brukardt
2006-09-09 14:55             ` adaworks
2006-09-05 23:52         ` Randy Brukardt
2006-09-07 19:09   ` Adam Beneschan
2006-09-07 19:21     ` Ed Falis
2006-09-07 19:46       ` Larry Kilgallen
2006-09-08 13:06         ` Ed Falis
replies disabled

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