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.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,2485cb1936a0a4ec X-Google-Attributes: gid103376,public From: "Samuel T. Harris" Subject: Re: Package with initialization only Date: 1999/07/21 Message-ID: <37964947.5C95E5D1@hso.link.com>#1/1 X-Deja-AN: 503714183 Content-Transfer-Encoding: 7bit References: <37961DD6.E56BD3E9@maths.unine.ch> <7n57tf$60q$1@nnrp1.deja.com> X-Accept-Language: en Content-Type: text/plain; charset=us-ascii Organization: Raytheon Training Inc. Mime-Version: 1.0 Newsgroups: comp.lang.ada Date: 1999-07-21T00:00:00+00:00 List-Id: Ted Dennison wrote: > > In article <37961DD6.E56BD3E9@maths.unine.ch>, > Gautier wrote: > > A small "aesthetic" problem: I have a package with initialization > only; > > thus I must add a dummy procedure to resolve the with/without body > > ambiguity Ada95 doesn't accept. There is surely a more elegant > formulation, > > Well, perhaps it would be more pleasing if you renamed your dummy > routine "Initialize" and moved all the initialization code into it. If > you put it into the public part that would even allow others to > reinitialize the variable. > While I don't disagree with Ted's suggestion, I do want to point out that many times the "intialization" must be done only once, preferably during elaboration. In such cases, I call the procedure "elaborate" and call it in the package body. I feel the name elaborate conveys the restriction of single initialization In my experience, a common need for an elaborate procedure is a variable which is an array of access to strings. The strings may change over time and I don't want the entire package body recompiling because of such changes. By using an "initialize" or "elaborate" procedure, I can make it a separate unit thus isolating the compilation impact. -- Samuel T. Harris, Principal Engineer Raytheon, Scientific and Technical Systems "If you can make it, We can fake it!"