"Russ" <18k11tm001@sneakemail.com> a �crit dans le message de [...] > That may be so, but this particular issue is simple enough even for an > ameteur like me. I know that > > with/use Ada.Integer_Text_IO; > > is cleaner and simpler than > > with Ada.Integer_Text_IO; use Ada.Inteqer_Text_IO > > And I also that it is a trivial matter to parse the former to produce > the latter. I could do it myself in a few minutes. Nor does it break > compatibility with legacy code in any way. I see absolutely no > reasonable objection to "with/use" (but I have a funny feeling that I > may soon be bombarded with a lot of unreasonable objections). > Since you asked for it... (but I'll try to have reasonable objections). Note that I am known for being strongly *in favor* of the use clause. I would strongly oppose this proposal for a very simple reason: it defeats the main goal of having separated with from use. With is a library level clause; it tells: "this unit, somewhere needs that unit". Use opens the visibility: it tells: "here is the scope where I actually use the unit". A use clause should always be for the innermost context where the unit is actually used. Therefore, you should *never* have a use clause as a context clause. If I need to have something visible everywhere in a unit, I use the same style as when the visibility is more restricted, i.e. I don't write: with Foo; use Foo; procedure P is ... end P; but rather: with Foo; procedure P is use Foo; ... end P. Allowing with/use would simply encourage a style that should be discouraged altogether. QED. -- --------------------------------------------------------- J-P. Rosen (rosen@adalog.fr) Visit Adalog's web site at http://www.adalog.fr