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,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,c39ad3e35a7690a9 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,UTF8 Received: by 10.68.231.202 with SMTP id ti10mr10127191pbc.5.1329150254111; Mon, 13 Feb 2012 08:24:14 -0800 (PST) Path: wr5ni20617pbc.0!nntp.google.com!news2.google.com!goblin2!goblin.stu.neva.ru!aioe.org!.POSTED!not-for-mail From: =?utf-8?Q?Yannick_Duch=C3=AAne_=28Hibou57?= =?utf-8?Q?=29?= Newsgroups: comp.lang.ada Subject: Re: Convention for naming of packages Date: Mon, 13 Feb 2012 17:24:12 +0100 Organization: Ada @ Home Message-ID: References: <4f355230$0$21451$ba4acef3@reader.news.orange.fr> <1sx3fy79wys5s.1723nejowbg76.dlg@40tude.net> <15fgcngmgl41e$.113i7gtuwpwpv$.dlg@40tude.net> <12sbwz7m0r1qx.1pbp0ox3jr36s.dlg@40tude.net> NNTP-Posting-Host: TqfFTdzi95I8zBbbKWTz3Q.user.speranza.aioe.org Mime-Version: 1.0 X-Complaints-To: abuse@aioe.org User-Agent: Opera Mail/11.61 (Linux) X-Notice: Filtered by postfilter v. 0.8.2 Content-Type: text/plain; charset=utf-8; format=flowed; delsp=yes Content-Transfer-Encoding: Quoted-Printable Date: 2012-02-13T17:24:12+01:00 List-Id: Le Mon, 13 Feb 2012 16:11:49 +0100, Dmitry A. Kazakov = a =C3=A9crit: > On Mon, 13 Feb 2012 15:20:30 +0100, Yannick Duch=C3=AAne (Hibou57) wro= te: > >> A package defines either, a domain, some relationships, a process, an= >> object type (at least to me), possibly some other high level concepts= = >> too. >> Let talk about a package defining an object, to keep one single examp= le. > > Don't think that singletone is a good idea. In any case, its use is qu= ite > marginal in Ada, if any. > >> An object type has methods for creation; > > A singletone may not have such method. Semantically, you should not be= = > able > create a singletone explicitly. Seems my wording was unclear. I meant a package describing, specifying (= by = Package, I mean the interface, not the body) something. A package is not= = an instance of the object if discribes (when its purpose is to describe = an = object), it defines it. I you want to say it by mean of singleton, so I = = would see only one: an instance of a kind of meta=E2=80=91class. The onl= y = instanciation provided by a package, is its body (when applicable), not = = the object it describes. >> The example with Element_Type which may be a Symbol_Type in some = >> context, >> explains why I said this may be compared to genericity. >> >> Static genericity seems adopted without too much objections in the = >> =E2=80=9Ccrowd=E2=80=9D >> of Ada application authors. > > Static polymorphism is OK so long the semantics of overloaded entities= is > same. The semantics of Element_Type is? Element + type? That looks far= = > too thin. The semantic may be thin, if the semantic is thin, then its specificatio= n = cannot be said too much thin for the sole reason it's thin. Element_Type would be Element + Type, as you say, and also what appears = as = the second parameter of an Add method. Its presence as the second = parameter of Add defines what Element_Type is (not just its name =E2=80=9C= Element=E2=80=9D = and its Type status in the Ada source text). This may be thin, while still enough and all if nothing more is expected= . = The name =E2=80=9CElement=E2=80=9D is an hint for the reader, a reminder= of the main = abstraction which applies to it. -- = =E2=80=9CSyntactic sugar causes cancer of the semi-colons.=E2=80=9D [1] =E2=80=9CStructured Programming supports the law of the excluded muddle.= =E2=80=9D [1] [1]: Epigrams on Programming =E2=80=94 Alan J. =E2=80=94 P. Yale Univers= ity