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!gandalf.srv.welterde.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: Fri, 6 Oct 2017 20:52:30 -0500 Organization: JSA Research & Innovation Message-ID: References: Injection-Date: Sat, 7 Oct 2017 01:52:31 -0000 (UTC) Injection-Info: franka.jacob-sparre.dk; posting-host="rrsoftware.com:24.196.82.226"; logging-data="31957"; 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:48378 Date: 2017-10-06T20:52:30-05:00 List-Id: "Jeffrey R. Carter" wrote in message news:or7fu4$7vh$1@dont-email.me... > On 10/06/2017 01:36 AM, Randy Brukardt wrote: >> Out of curosity, why you do need to write an empty package? I don't think >> I've encountered one outside of ACATS tests and incomplete examples. > > I frequently structure projects as > > package Project is > pragma Pure; > end Project; > > package Project.Model is ... > package Project.UI is ... > procedure Project.Program is ... 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. Randy.