comp.lang.ada
 help / color / mirror / Atom feed
From: eachus@spectre.mitre.org (Robert I. Eachus)
Subject: Re: Ada and Automotive Industry
Date: 1996/12/13
Date: 1996-12-13T00:00:00+00:00	[thread overview]
Message-ID: <EACHUS.96Dec12192620@spectre.mitre.org> (raw)
In-Reply-To: mazzanti-1112961142160001@131.114.200.115


In article <mazzanti-1112961142160001@131.114.200.115> mazzanti@iei.pi.cnr.it (Franco Mazzanti) writes:

  > AI-00828 and AI-00587 (just to mention two) are not catalogued as "study" 
  > issues but as "ramifications".  The underlying uncertainty, however,
  > has not been removed in Ada95 (A note in the ARM would have
  > probably been sufficient).

   Ramification has a very specific meaning in the case of AI's.  It
means that the answer can be derived from the reference manual, but,
in the case of published AIs, that the ARG felt that it was worth
explaining.  So an AI decided as a ramification is in the same
category as a confirmation but with a different feel:

   Confirmation: "Of course that is what reference manual says, and we
aren't going to change it no matter how silly you think it is."

   Ramification:  "It may seem that this point is not described in the
reference manual, but if you spend a few months looking, you will find
that..."

   To take the first of the two mentioned AIs, AI-828 "File objects
need not be passed by reference" is a very good example of a
ramification.  The "obvious" implementation of FILE_TYPE in the IO
packages is as a pointer to a file descriptor.  But in Ada 83 this
implementation is not required, and there are programs which can
detect the difference.  Oh, and other changes in Ada 95 make some of
those implementations, and some of those programs illegal.  However,
it is still legal to make a file object an index into a table of file
descriptors, and pass it by value.  (And yes this topic was discussed
during the langauge revision.)

   The second probably should have been classified as presentation,
and that is how it was resolved in Ada 95.  (Well, part of the fix
involves the fix for AI-315 in section 11.6.)  All issues of
erroneousness like this were moved to a new section 13.9.1.  In the
process, some of the programs that were erroneous in Ada 83 were made
non-erroneous.  In this particular case (an assignment to a
subcomponent of an object with discriminants, where the discriminants
are changed as a side-effect), it is only if the subcomponent is
subsequently referenced that makes the program erroneous.  Notice that
this is an extremely difficult case to imagine (or construct).  You
have to have an object with discriminants containing a sub-component
depending on the discriminants, and an assignment where the required
order of evaluation breaks things.  You can write--the usual way is an
index value with side-effects--but it is the sort of code that gets
you killed even if it does "work."

   So I assume the ramfication classification was homage to the amount
of work needed to actually construct a case where the rule applied.
(Or possibly allowing for the fact that when in the course of doing
the assignment the program became erroneous could affect things. ;-)



   
--

					Robert I. Eachus

with Standard_Disclaimer;
use  Standard_Disclaimer;
function Message (Text: in Clever_Ideas) return Better_Ideas is...




  parent reply	other threads:[~1996-12-13  0:00 UTC|newest]

Thread overview: 163+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-12-11  0:00 Ada and Automotive Industry Franco Mazzanti
1996-12-11  0:00 ` Robert Dewar
1996-12-13  0:00 ` Robert I. Eachus [this message]
  -- strict thread matches above, loose matches on Subject: below --
1996-12-13  0:00 Franco Mazzanti
     [not found] <1996Dec11.220521.525@decus.org.nz>
1996-12-11  0:00 ` Ken Garlington
1996-12-10  0:00 Franco Mazzanti
1996-12-05  0:00 Franco Mazzanti
1996-12-06  0:00 ` Robert Dewar
1996-12-11  0:00 ` Robert I. Eachus
1996-12-13  0:00   ` Ted Dennison
1996-12-15  0:00     ` Robert Dewar
1996-12-17  0:00       ` Tucker Taft
1996-12-18  0:00       ` Robert A Duff
1996-12-18  0:00         ` Robert Dewar
1996-12-18  0:00           ` Robert A Duff
1996-12-18  0:00             ` Ken Garlington
1996-12-19  0:00               ` Robert A Duff
1996-12-20  0:00                 ` Philip Brashear
1996-12-20  0:00                   ` Robert Dewar
1996-12-22  0:00               ` Robert Dewar
1996-12-23  0:00                 ` Ken Garlington
1996-12-18  0:00       ` Geert Bosch
1996-12-18  0:00       ` Keith Thompson
1996-12-18  0:00         ` Keith Thompson
1996-12-17  0:00 ` Robert I. Eachus
     [not found] <1996Dec2.221233.523@decus.org.nz>
1996-12-02  0:00 ` Ken Garlington
     [not found] <1996Nov30.130532.522@decus.org.nz>
1996-12-02  0:00 ` Ken Garlington
1996-11-27  0:00 W. Wesley Groleau (Wes)
1996-11-25  0:00 Ada and automotive industry W. Wesley Groleau (Wes)
1996-11-24  0:00 Ada and Automotive Industry Ingemar Persson
1996-11-13  0:00 Marin David Condic, 561.796.8997, M/S 731-93
1996-11-13  0:00 ` Ken Garlington
1996-11-12  0:00 James Thiele
1996-11-13  0:00 ` Ken Garlington
1996-11-13  0:00 ` Robert Dewar
1996-11-15  0:00   ` Ken Garlington
1996-11-13  0:00 ` Frank Manning
1996-11-12  0:00 James Thiele
1996-11-11  0:00 James Thiele
1996-11-01  0:00 ETHoierman
1996-11-05  0:00 ` Stanley R. Allen
1996-11-06  0:00 ` Stanley R. Allen
1996-11-06  0:00   ` James Thiele
1996-11-06  0:00     ` Stanley R. Allen
1996-11-07  0:00       ` Dale Stanbrough
1996-11-11  0:00       ` Ken Tindell
1996-11-11  0:00         ` Robert Dewar
1996-11-11  0:00         ` Matthew Heaney
1996-11-11  0:00           ` Philip Brashear
1996-11-07  0:00     ` Frank Manning
1996-11-11  0:00     ` Norman H. Cohen
1996-11-11  0:00     ` Frank Manning
1996-11-13  0:00       ` Richard Riehle
1996-11-14  0:00         ` Jack Patteeuw
1996-11-16  0:00           ` David Taylor
1996-11-20  0:00             ` Richard Riehle
1996-11-21  0:00               ` Dave Wood
1996-11-21  0:00             ` Art Schwarz
1996-11-22  0:00               ` Robert B. Love 
1996-11-22  0:00               ` Ken Tindell
1996-11-24  0:00               ` "Paul E. Bennett"
1996-11-18  0:00           ` David Taylor
1996-11-17  0:00         ` Robert Dewar
1996-11-18  0:00           ` Ken Tindell
1996-11-22  0:00             ` Robert Dewar
1996-11-22  0:00             ` Richard Kenner
1996-11-23  0:00               ` James Thiele
1996-11-27  0:00                 ` Richard Kenner
1996-12-05  0:00             ` Michael Warner
1996-11-20  0:00           ` Richard Riehle
1996-11-23  0:00             ` Robert Dewar
1996-11-25  0:00               ` Richard Riehle
1996-11-27  0:00                 ` Robert Dewar
1996-11-27  0:00                 ` Robert Dewar
1996-11-29  0:00                   ` Richard Riehle
1996-12-02  0:00                   ` Chris Hills
1996-12-04  0:00                   ` Jon S Anthony
1996-11-27  0:00                 ` Ken Garlington
1996-12-01  0:00                   ` Richard Riehle
1996-11-25  0:00               ` Ken Tindell
1996-11-24  0:00             ` Richard Kenner
1996-11-25  0:00               ` Ken Tindell
1996-11-26  0:00                 ` John Dammeyer
1996-11-26  0:00                   ` Ken Garlington
1996-11-25  0:00               ` Richard Riehle
     [not found]           ` <Pine.GSO.3.95.961120154239.3 <Pine.GSO.3.95.961201100430.21598A-100000@nunic.nu.edu>
1996-12-01  0:00             ` James Thiele
1996-11-27  0:00         ` Jon S Anthony
1996-12-03  0:00           ` Richard A. O'Keefe
1996-12-03  0:00             ` Ted Dennison
1996-12-11  0:00             ` Richard Riehle
1996-12-13  0:00               ` Ted Dennison
1996-11-13  0:00       ` Ken Tindell
1996-11-14  0:00     ` Robert I. Eachus
1996-11-15  0:00       ` William P. Milam
1996-11-08  0:00   ` Ken Garlington
1996-11-08  0:00   ` Robert I. Eachus
1996-11-08  0:00     ` James Thiele
1996-11-08  0:00       ` nasser
1996-11-09  0:00         ` Robert Dewar
1996-11-22  0:00           ` Dirk Dickmanns
1996-11-10  0:00       ` Matthew Heaney
1996-11-11  0:00         ` Robert Dewar
1996-11-11  0:00           ` James Thiele
1996-11-12  0:00             ` Robert Dewar
1996-11-12  0:00       ` Richard A. O'Keefe
1996-11-12  0:00         ` Robert Dewar
1996-11-13  0:00           ` Richard A. O'Keefe
1996-11-14  0:00         ` William P. Milam
1996-11-19  0:00           ` Richard A. O'Keefe
1996-11-15  0:00       ` Robert Dewar
1996-11-16  0:00         ` Geert Bosch
1996-11-21  0:00           ` Robert Dewar
1996-11-16  0:00         ` Adam Beneschan
1996-11-22  0:00           ` Robert Dewar
1996-11-15  0:00       ` Robert Dewar
1996-11-11  0:00     ` Ken Tindell
1996-11-11  0:00       ` Robert Dewar
1996-11-11  0:00       ` Matthew Heaney
     [not found]   ` <847341612snz@transcontech.co.uk>
1996-11-10  0:00     ` Robert Dewar
1996-11-12  0:00       ` "Paul E. Bennett"
1996-11-15  0:00   ` Robert I. Eachus
1996-11-15  0:00     ` Robert Dewar
1996-11-18  0:00       ` Ken Tindell
1996-11-18  0:00         ` Robert Dewar
1996-11-19  0:00         ` Richard A. O'Keefe
1996-12-05  0:00         ` Michael Warner
1996-12-06  0:00           ` Robert Dewar
1996-11-15  0:00     ` John Howard
1996-11-15  0:00     ` William P. Milam
1996-11-21  0:00     ` James Weaver
1996-11-21  0:00   ` Robert I. Eachus
1996-11-22  0:00   ` Jon S Anthony
1996-11-22  0:00   ` Chris Hills
1996-11-23  0:00   ` Ralph Paul
1996-11-24  0:00   ` Otto Lind
1996-11-25  0:00     ` Richard Kenner
1996-11-28  0:00       ` Eyal Ben-Avraham
1996-11-29  0:00         ` Richard Kenner
1996-11-25  0:00   ` Robert I. Eachus
1996-11-26  0:00   ` Jon S Anthony
1996-11-26  0:00   ` Jon S Anthony
1996-11-27  0:00   ` Jon S Anthony
1996-11-27  0:00   ` Jon S Anthony
1996-12-01  0:00   ` Chris Hills
1996-12-01  0:00     ` Robert Dewar
1996-12-01  0:00     ` Robert Dewar
1996-12-02  0:00     ` Robert A Duff
1996-12-02  0:00   ` Chris Hills
1996-12-03  0:00     ` Andy Ashworth
1996-12-03  0:00       ` Ian Ward
1996-12-03  0:00   ` George Romanski
1996-12-05  0:00     ` Ken Tindell
1996-12-03  0:00   ` Ted Dennison
1996-12-03  0:00   ` Ken Garlington
1996-12-04  0:00   ` Jon S Anthony
1996-12-11  0:00   ` Robert I. Eachus
1996-12-13  0:00   ` Ted Dennison
1996-12-13  0:00     ` Robert Dewar
1996-12-14  0:00   ` Chris Hills
1996-12-19  0:00     ` Ian Ward
1996-12-17  0:00   ` Robert I. Eachus
1996-12-18  0:00     ` Robert Dewar
1996-12-19  0:00   ` Robert I. Eachus
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox