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, MSGID_RANDY 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: Ted Dennison Subject: Re: Package with initialization only Date: 1999/07/22 Message-ID: <7n77dn$rmj$1@nnrp1.deja.com>#1/1 X-Deja-AN: 503991859 References: <37964947.5C95E5D1@hso.link.com> <7n65nl$1ru2@svlss.lmms.lmco.com> X-Http-Proxy: 1.0 x33.deja.com:80 (Squid/1.1.22) for client 204.48.27.130 Organization: Deja.com - Share what you know. Learn what you don't. X-Article-Creation-Date: Thu Jul 22 13:47:39 1999 GMT X-MyDeja-Info: XMYDJUIDtedennison Newsgroups: comp.lang.ada X-Http-User-Agent: Mozilla/4.6 [en] (WinNT; I) Date: 1999-07-22T00:00:00+00:00 List-Id: In article <7n65nl$1ru2@svlss.lmms.lmco.com>, dkristol@see-my.sig wrote: > "Samuel T. Harris" () writes: > Maybe it is my real-time embedded systems background, > but i much prefer explicit initialization over > elaboration. The example that immediately comes to > mind is a case where the elaboration code wrote over > a memory mapped bus and sometimes caused contention Agree completely. Also doing large amounts of work during elaboration tends to lead to elaboration order problems, often manifested as hard to track down Program_Error's that may go away or reappear or move around every time a new unit is added. There's also the issue that many debuggers make it difficult to stop or step in elaboration code. There's also the confusing situation where the package needs to be with'ed in by the main unit so that its elaboration code can run, even though no unit in the entire program actually *uses* an entity from the pacakge's spec. %-( Its very tempting to remove the "with"s, as leaving in obsolete "with"s is a common programmer error. Putting the elaboration code into an "Initialize" routine that gets called by the main unit makes it much more explicit what's going on (and very often gives the main unit some small semblance of a job to do). -- T.E.D. Sent via Deja.com http://www.deja.com/ Share what you know. Learn what you don't.