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,8c87bf30faa2b6b X-Google-Attributes: gid103376,public From: "Theodore E. Dennison" Subject: Re: [Q] To initialise or not. Date: 1996/04/26 Message-ID: <318109B1.3B54AFBF@escmail.orl.mmc.com>#1/1 X-Deja-AN: 151579068 references: <484274071wnr@diphi.demon.co.uk> content-type: text/plain; charset=us-ascii organization: Lockheed Martin Information Systems mime-version: 1.0 newsgroups: comp.lang.ada x-mailer: Mozilla 2.0 (X11; I; SunOS 4.1.3_U1 sun4m) Date: 1996-04-26T00:00:00+00:00 List-Id: JP Thornley wrote: > > We are currently looking at revision of the Ada coding standards > (probably based closely on the Ada Quality and Style Guidelines as > advised elsewhere). > > However the issue of whether or not to require all scalar objects to be > initialised has generated a substantial discussion without yet reaching > a clear conclusion. The Ada Quality and Style Guidelines are silent on > this issue, so I would be interested in what other Ada users have found > and what recommendations they would make. I suspect it is silent on this issue, because the Ada (83) LRM is NOT silent on the issue. Section 3.2.1(18) reads: "The execution of a program is erroneous if it attempts to evaluate a scalar variable with an undefined value." In pracitice you don't even need to throw words like "erronious" around, because a program that reads from an uninitialized variable generally won't work. I don't see the overriding need to write a procedure to forbid every possible erronious practice. But if you do, I'd just phrase it to forbid the situation above- "The program shall not attempt to evaluate a scalar variable that has not been initialized". -- T.E.D. | Work - mailto:dennison@escmail.orl.mmc.com | | Home - mailto:dennison@iag.net | | URL - http://www.iag.net/~dennison |