From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!nntp-feed.chiark.greenend.org.uk!ewrotcd!newsfeed.xs3.de!io.xs3.de!news.jacob-sparre.dk!franka.jacob-sparre.dk!pnx.dk!.POSTED.rrsoftware.com!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: Idiomatic formatting for empty package Date: Mon, 9 Oct 2017 16:45:41 -0500 Organization: JSA Research & Innovation Message-ID: References: Injection-Date: Mon, 9 Oct 2017 21:45:42 -0000 (UTC) Injection-Info: franka.jacob-sparre.dk; posting-host="rrsoftware.com:24.196.82.226"; logging-data="12983"; mail-complaints-to="news@jacob-sparre.dk" X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-RFC2646: Format=Flowed; Response X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.7246 Xref: news.eternal-september.org comp.lang.ada:48407 Date: 2017-10-09T16:45:41-05:00 List-Id: "Jeffrey R. Carter" wrote in message news:or9too$93i$1@dont-email.me... > On 10/07/2017 03:52 AM, Randy Brukardt wrote: >> >> Sure, but there always seems to be something that needs to be shared >> amongst >> all of the parts. So the root package never ends up completely empty. For >> instance, see Ada.Strings or Ada.Containers. > > For instance, see package Ada. John also pointed this out privately. Sorry that I missed it. Still, Ada is not a very good example: (1) Ada was created after the fact to group a bunch of unrelated packages together. One hopes that no one thinks that such a practice is a good idea! The grouping should be of things that are related (like Ada.Strings and Ada.Containers), and aas I noted, typically there are things that are shared that make sense in the root package. (2) For instance, had the IO packages been grouped together (without all of the other unrelated stuff), it would make sense for the IO exceptions to be declared in that parent package. It wasn't done in Ada as the organization of the IO libraries predates child packages. (Argubly, that should have been done anyway in Ada 95, but it's not as obvious given the capabiliy needs.) So, I still don't see much need for empty packages; the existence of one poorly designed example doesn't change that. Randy.