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,16e3a8dd4f3ab3f3 X-Google-Attributes: gid103376,public From: gauthier@unilim.fr (Michel Gauthier) Subject: Re: Elaboration order Date: 1996/03/19 Message-ID: #1/1 X-Deja-AN: 143190297 references: <314701A1.469D@lfwc.lockheed.com> organization: Universite de Limoges newsgroups: comp.lang.ada Date: 1996-03-19T00:00:00+00:00 List-Id: In article <314EE48E.7F5A@escmail.orl.mmc.com>, Ted Dennison wrote: >> Robert Dewar wrote: >> > >> > (snip) >> (snip) >> > This sounds VERY bogus, I would NEVER do this kind of initialization >> > at elaboration time -- this is NOT what elaboratoin is intended for, >> > but rather, in my book, a gross misuse of the concept! >> >> I completely agree, but it doesn't mean others won't do it. I was given >> some code to debug once which was crashing 4 HOURS into elaboration. >> Who knows how long elaboration would have taken without the crash? Nevertheless, you should consider that object design, when combined with Ada "accessibility rules" imply greater importance given to elaboration. For instance, deriving a tagged type is legal only at the same level as the parent type. Assuming that many tagged types are (visibly or privately) declared in some library package, all their childs are necessarily declared in library packages. Ada-95 programs will therefore make greater use (than Ada-83) of library elaborations. How can you design and code something like an option mechanism (from command line or configuration files) that must initialise before some type definition ? Note that I lost the initial messages, and hence cannot give any opinion on that particular case. I only suggest not to repeat the mistake ( classic about exceptions) of confusing possible misuses and absolute harm. I guess we, industry programmers and academic teachers, have yet to "elaborate" style rules about the new 95 features, among which the above problems. To conclude, I may envisage to agree with " this is not what elaboration is intended for" but I am not sure that " what elaboration is intended for" is information common to everybody. ---------- ---------- ---------- ---------- Michel Gauthier / Laboratoire d'informatique 123 avenue Albert Thomas / F-87060 Limoges telephone +33 () 55457335 [or ~ 7232] fax +33 () 55457315 [or ~7201] ---------- ---------- ---------- ---------- La grande equation de la fin du siecle : windows-X = Mac-Y The main end-of-century equation : windows-X = Mac-Y ---------- ---------- ---------- ---------- Si l'an 2000 est pour vous un mysticisme stupide, utilisez la base 9 If you feel year 2000 a stupid mystic craze, use numeration base 9 ---------- ---------- ---------- ----------