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-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,9862c21fee63f95c X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-06-11 14:11:02 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!cyclone.bc.net!sjc70.webusenet.com!sjc72.webusenet.com!news.webusenet.com!newsfeed1.easynews.com!easynews.com!easynews!crtntx1-snh1.gtei.net!news.gtei.net!chcgil2-snh1.gtei.net!news.bbnplanet.com!wn12feed!worldnet.att.net!204.127.198.203!attbi_feed3!attbi.com!rwcrnsc54.POSTED!not-for-mail Message-ID: <3EE79AD9.8040706@attbi.com> From: "Robert I. Eachus" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.0.2) Gecko/20021120 Netscape/7.01 X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Visibility and Elaboration References: <3EE6D120.2020701@attbi.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit NNTP-Posting-Host: 24.62.164.137 X-Complaints-To: abuse@attbi.com X-Trace: rwcrnsc54 1055365860 24.62.164.137 (Wed, 11 Jun 2003 21:11:00 GMT) NNTP-Posting-Date: Wed, 11 Jun 2003 21:11:00 GMT Organization: AT&T Broadband Date: Wed, 11 Jun 2003 21:11:00 GMT Xref: archiver1.google.com comp.lang.ada:39010 Date: 2003-06-11T21:11:00+00:00 List-Id: tmoran@acm.org wrote: > I remain confused. That sentence sounds like elaboration after the main > program starts, is at least mildly unusual. But my understanding is that > procedure p(n:in positive) is > x : array(1 .. n) of integer; > causes the "elaboration" of "x" each time "p" is called, ie, executing > a program is typically a constant back and forth between elaborating > declarations and executing statements. Not confused at all, it is a matter of viewpoint. The "normal" Ada programming style is to only use late elaborating objects when necessary. So maybe 90% of the object declarations in a "typical" Ada program are elaborated either before or during the elaboration of the main program. However, if you count the number of times a particular declaration is elaborated, early and/or static elaboration is often a negligable part of the whole. However the fact that almost all elaboration errors occur before the main program runs encourages the view that elaboration checks all occur before the program runs. This is wrong, and is what I was originally responding to.