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=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,5c1125c290d9dd14 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news3.google.com!proxad.net!feeder1-2.proxad.net!newsfeed.straub-nv.de!eternal-september.org!feeder.eternal-september.org!.POSTED!not-for-mail From: Ludovic Brenta Newsgroups: comp.lang.ada Subject: Re: ANN: Ada 2005 Math Extensions, 20100810 release Date: Fri, 13 Aug 2010 08:54:18 +0200 Organization: A noiseless patient Spider Message-ID: <87r5i3j945.fsf@ludovic-brenta.org> References: <15e1x67lls1pe$.sqnhbm59hwdz$.dlg@40tude.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Injection-Date: Fri, 13 Aug 2010 06:54:17 +0000 (UTC) Injection-Info: mx03.eternal-september.org; posting-host="79l6+2iEBh3kHi3l3eyPTw"; logging-data="1393"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+JIZ9kvUzBPasjVjsM1L9k" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) Cancel-Lock: sha1:0AnEgIj3UplU6zfrkN6EizUDPMs= sha1:0gqox2h4efjWLFg3VvxZlj8rAOU= Xref: g2news1.google.com comp.lang.ada:13201 Date: 2010-08-13T08:54:18+02:00 List-Id: "Dmitry A. Kazakov" writes: >> In other places I've tacked _G on the end of the 'obvious' name: >> >> generic >> package ColdFrame.Events_G.Standard_G.Callback_Manager_G is >> >> and I saw someone else (Ludovic?) doing the same here recently. > > I used plural suffix 's' before, but it Generic is clearer and it seems > like a semi-standard now. Yes, I did a _G here recently; I let the coding standard of Eurocontrol (my day job) influence me. The coding standard says *_G for generics, *_T for secondary types and just T for types. Hence: package S_Expression is -- singlular type T is ...; -- the primary type, S_Expression.T generic ... package Serialization_G is ... end Serialization_G; private type Internal_T is ...; -- a secondary (helper) type end S_Expression; Over the years I grew used to it and now I like it. One of the advantages is that you don't have to struggle to find meaningful names for parameters; e.g. you can say: procedure Foo (Internal : out Internal_T) is ... end Foo; -- Ludovic Brenta.