comp.lang.ada
 help / color / mirror / Atom feed
From: Richard Riehle <rriehle@nunic.nu.edu>
Subject: Re: Ariane 5 - not an exception?
Date: 1996/08/20
Date: 1996-08-20T00:00:00+00:00	[thread overview]
Message-ID: <Pine.GSO.3.92.960820103913.26997A-100000@nunic.nu.edu> (raw)
In-Reply-To: 4up8pi$lvi@goanna.cs.rmit.edu.au


On 13 Aug 1996, ++           robin wrote:

   From: Richard Riehle

   Robin wrote in response to my posting regarding PL/I for Arianne:

>
> 	>  2) PL/I
>
> 	>     a) There is no PL/I compiler for the 1750A
>
> ---Not an obstacle.  How was an Ada compiler written for it?

  There are many Ada compilers for the 1750A from many different
  compiler publishers.  And there is considerable experience using
  Ada for this architecture.  The unavailability of a PL/I
  compiler is very much an obstacle to using it.

  Moreover, PL/I has plenty of problems of its own. From an
  engineering viewpoint, little nuisances such as "default
  identifiers,"  the ability to reference an unknown name
  outside a nested block, side effects created by "secret"
  variables, the poor facilities for explicit scope resolution,
  the unpredictability of "partial qualification," etc. I could
  go on for several pages, but this should give some idea.

  PL/I, when used carefully, has been used successfully for
  a wide-range of important applications, but it is not
  without a substantial number of warts and imperfections.
  Once again, I have not used PL/I for a long time, so some
  things about the language may have gotten better.


> 	>     b) Ada is far more suitable for safety-sensitive
>       >      software than Pl/I
>
> ---Nonsense.  PL/I has a long (30 years) record in
> excellent real-time facilities, and with people with
> experience in error-recovery and fail-soft in routine
> commercial applications as well as real-time programming.

  And there is far more successful experience using Ada for this
  processor architecture than there is PL/I. Moreover, Ada is
  explicitly designed for safety-sensitive software.

  Moreover, Ada's track record in safety-critical real time
  systems is excellent and getting better all the time.

> 	>     c) This failure was not a language issue.
>
> ---Isn't it?  One of the arguments put forward was that
> an Ada condition couldn't be raised and leave a trace,
> and that it would be argued that there was no guarantee
> whether a piece of code was executed.

  Vis a vis the Ada language, that is an incorrect statement.

>
>    In PL/I, a SIGNAL statement (which can be used for
> program checkout) leaves a printed record that it was
> executed.  It gives a message that the condition was
> raised, and comes with line numbers, etc.  There is
> absolutely no doubt that the statement did not execute!

  So who gets the message? Where is it stored?  Printed record?
  Now that is interesting. It reflects a mainframe point-of-view
  rather than an embedded systems point-of-view.  We seldom
  include a printer on a  space bound system.  On the other
  hand, we do collect a lot of telemetry data, and this should
  be available.  However, it would have been of little use for
  Arianne V since no one would be using it for corrective action
  in time to save the system.

> ---There are lots of things for which one can blame
> management, but the lack of a check for overflow has
> to come down to the programmer.

  Wrong again.  In an data processing system, we give the programmer
  greater latitude. In this kind of application, the programmer is a
  contributor, but not a final authority. This is engineering, not
  programming.  Or it should be.

>> d) Given the incorrect specifications against which the program was
>>    designed, the same failure would have occurred in PL/I or any
>>    other language.

  If a programmer decides, independently of the specifications, the
  systems engineering designers, the V & V team, and his peer review
  group, to include unapproved code with such serious implications as
  error correction, that programmer will never work on this kind of
  project again.

>
> overflow.  A R/T (and even non R/T) PL/I programmer
> routinely puts in error control.

  This is not the exclusive province of PL/I programmers. I am amazed
  at such a narrow view.  Error management is a well-known part of
  programming, and Ada has excellent facilities for doing it. Facilities
  every bit as good, perhaps better ( I have written PL/I in my ancient
  past) than PL/I.  However, the programmer may alert the development
  team to a potential error, but this software is the work of a team
  of engineers, not the independent creative effort of some single
  programmer.

> ---In this case, with simulated inputs, and with SIGNAL
> statements to check out what happens when an interrupt
> occurs.  If this had been done (routine in PL/I), the
> effect of an unchecked conversion would have been observed.

  Apparently, as I have learned from another post and a face-to-face
  conversation with one of the engineers on the project, this was not
  a function of unchecked conversion, so that is moot.

> 	>  7) Ada
>
> 	>     This is still the best language for doing this kind of system.
>
> ---PL/I would be clearly better, as it meets the requirments
> for audit trails in program and system checkout (in addition
> to the other facilities that it offers).

  Frankly, I am still baffled by this argument. It is increasingly clear
  that your knowledge of Ada is somewhere between sparse and none.
  PL/I was well-known at the time a decision was taken to bypass it as
  a choice for the new DoD language in the late 1970's. Why?

  I can think of lots of reasons, but they would be lost on anyone who
  is not ready to acknowledge their validity.

  In response to my comment regarding the role of management in this
  failure, you reply,

> ---Scarcely convincing, in view of the failure.

  Well, it had better be convincing to someone. If I understand my
  understanding as I think I understand it, the failure was a direct
  result of assuming that software which behaved correctly for
  Arianne IV, would also work correctly for Arianne V.  This assumption
  was made in spite of the fact that Arianne V was designed with a
  different set of launch behaviors that Arianne IV.

  On Arianne IV, the software, at the point where the overflow would
  be detected, was designed to shut down the system while it was still
  on the launch pad. Due to differences in launch behavior, this same
  software shut down the system after lift-off.

  The software behaved exactly as it should for the Arianne IV. It was
  an engineering error to use the same software, unchanged in a system
  with different launch characteristics.  No programming language can
  tell the engineers they are making such a fundamental error. Even
  your beloved PL/I would have failed under these circumstances, unless
  it has taken on far greater run-time intelligence than I recall.

  Richard Riehle





  parent reply	other threads:[~1996-08-20  0:00 UTC|newest]

Thread overview: 194+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-07-25  0:00 Ariane 5 - not an exception? Simon Bluck
1996-07-25  0:00 ` Multiple reasons for failure of Ariane 5 (was: Re: Ariane 5 - not an exception?) Kirk Beitz
1996-07-26  0:00   ` Robert I. Eachus
1996-07-26  0:00   ` ++           robin
1996-08-05  0:00     ` Darren C Davenport
1996-08-06  0:00       ` U32872
1996-08-07  0:00         ` Robert Dewar
1996-08-08  0:00           ` Pascal Martin @lone
1996-08-09  0:00             ` Robert Dewar
1996-08-10  0:00               ` dwnoon
1996-08-11  0:00                 ` Robert Dewar
1996-08-15  0:00                   ` dwnoon
1996-08-16  0:00                     ` Robert Dewar
1996-08-20  0:00                       ` dwnoon
1996-08-12  0:00                 ` Ken Garlington
1996-08-15  0:00                 ` Richard Riehle
1996-08-22  0:00                   ` ++           robin
1996-08-23  0:00                     ` Ken Garlington
1996-08-31  0:00                     ` Ada versus PL/I " Richard Riehle
1996-09-02  0:00                       ` ++           robin
1996-09-02  0:00                         ` Richard A. O'Keefe
1996-09-03  0:00                           ` ++           robin
1996-09-03  0:00                             ` Robb Nebbe
1996-09-17  0:00                             ` shmuel
1996-09-17  0:00                               ` Jay McFadyen
1996-09-18  0:00                                 ` John McCabe
1996-09-20  0:00                               ` shmuel
1996-09-03  0:00                       ` J. Kanze
1996-09-07  0:00                         ` Robert Dewar
1996-09-09  0:00                           ` ++           robin
1996-09-09  0:00                             ` Robert Dewar
1996-09-09  0:00                               ` Ken Garlington
1996-09-03  0:00                       ` ++           robin
1996-09-04  0:00                         ` Robert Dewar
1996-09-07  0:00                           ` ++           robin
1996-09-06  0:00                             ` PL/I or PL/1 Larry Hazel
1996-09-11  0:00                     ` Multiple reasons for failure of Ariane 5 (was: Re: Ariane 5 - not an exception?) J.Worringen
1996-09-12  0:00                       ` Ken Garlington
1996-09-14  0:00                       ` Use DejaNews to retrieve Ariane discussion David Alex Lamb
1996-09-19  0:00                         ` Earl H. Kinmonth
1996-09-14  0:00                       ` Multiple reasons for failure of Ariane 5 (was: Re: Ariane 5 - not an exception?) David Alex Lamb
1996-08-11  0:00               ` ++           robin
     [not found]               ` <4uibvh$References: <Dv45EJ.8r@fsa.bris.ac.uk>
1996-08-16  0:00                 ` A. Grant
1996-08-08  0:00         ` bohn
1996-08-23  0:00   ` Jon S Anthony
1996-08-23  0:00     ` ++           robin
1996-08-23  0:00       ` Richard A. O'Keefe
1996-08-23  0:00         ` Ken Garlington
1996-08-26  0:00         ` ++           robin
1996-08-27  0:00           ` Ken Garlington
1996-08-28  0:00             ` Larry Kilgallen
1996-08-29  0:00               ` Ken Garlington
1996-08-30  0:00             ` ++           robin
1996-08-30  0:00               ` David Weller
1996-09-04  0:00               ` Ken Garlington
1996-09-06  0:00                 ` Sandy McPherson
1996-09-09  0:00                   ` Ken Garlington
1996-08-30  0:00         ` Jon S Anthony
1996-08-26  0:00       ` Ken Garlington
1996-08-26  0:00         ` Dave Jones
1996-08-27  0:00           ` Ken Garlington
1996-08-30  0:00             ` ++           robin
1996-09-04  0:00               ` Ken Garlington
1996-09-06  0:00                 ` ++           robin
1996-09-18  0:00               ` Merlin Dorfman
1996-09-20  0:00                 ` John McCabe
1996-08-30  0:00         ` ++           robin
1996-08-30  0:00           ` John McCabe
1996-09-06  0:00       ` Jon S Anthony
1996-09-06  0:00         ` Robert Dewar
1996-08-23  0:00   ` Jon S Anthony
1996-08-26  0:00     ` ++           robin
1996-07-26  0:00 ` Ariane 5 - not an exception? ++           robin
1996-07-29  0:00   ` Bill Angel
1996-07-29  0:00     ` Paul_Green
1996-07-30  0:00     ` Nancy Mead
1996-07-31  0:00       ` Tucker Taft
1996-07-31  0:00       ` Steve O'Neill
1996-08-01  0:00       ` root
1996-08-01  0:00         ` Tucker Taft
1996-07-30  0:00     ` Richard Shetron
1996-07-30  0:00       ` ++           robin
1996-07-30  0:00     ` Bob Kurtz
1996-07-30  0:00     ` Lloyd Fischer
1996-07-30  0:00     ` Ken Garlington
1996-08-04  0:00     ` Richard Riehle
1996-08-05  0:00       ` Fergus Henderson
1996-08-05  0:00       ` Nigel Tzeng
1996-08-06  0:00         ` John McCabe
1996-08-05  0:00       ` John McCabe
1996-08-13  0:00       ` ++           robin
1996-08-13  0:00         ` Ken Garlington
1996-08-13  0:00           ` Kirk Bradley
1996-08-14  0:00             ` Ken Garlington
1996-08-18  0:00           ` PL/I Versus Ada (Was: Arianne ...) Richard Riehle
1996-08-19  0:00             ` Robert Dewar
1996-08-20  0:00             ` Lon Amick
1996-08-21  0:00             ` Lon D. Gowen, Ph.D.
1996-08-21  0:00             ` Tony Konashenok
1996-08-28  0:00               ` Richard Riehle
1996-08-29  0:00                 ` Lon D. Gowen, Ph.D.
1996-08-30  0:00                   ` Tony Konashenok
1996-08-30  0:00                     ` Adam Beneschan
1996-08-30  0:00                 ` John McCabe
1996-08-21  0:00             ` Tim Dugan
1996-08-23  0:00             ` arbuckj
1996-08-22  0:00           ` Ariane 5 - not an exception? ++           robin
1996-08-22  0:00             ` Ken Garlington
1996-08-13  0:00         ` Darren C Davenport
1996-08-14  0:00         ` John McCabe
1996-08-19  0:00           ` Chris Papademetrious
1996-08-22  0:00           ` ++           robin
1996-08-22  0:00             ` John McCabe
1996-08-23  0:00               ` Ken Garlington
1996-08-24  0:00                 ` John McCabe
1996-08-26  0:00                   ` Byron B. Kauffman
1996-08-27  0:00                     ` John McCabe
1996-08-28  0:00                       ` Byron B. Kauffman
1996-08-28  0:00                         ` Robert Dewar
1996-08-29  0:00                           ` Ted Dennison
1996-08-30  0:00                         ` John McCabe
1996-08-22  0:00             ` Martin Tom Brown
1996-08-23  0:00             ` Bob Gilbert
1996-08-24  0:00               ` Robert I. Eachus
1996-08-25  0:00                 ` John McCabe
1996-08-27  0:00                 ` Tom Speer
1996-08-26  0:00               ` Jon S Anthony
1996-08-20  0:00         ` Richard Riehle [this message]
1996-07-30  0:00   ` Steve O'Neill
1996-07-31  0:00     ` Martin Tom Brown
1996-07-31  0:00       ` Nigel Tzeng
1996-08-02  0:00       ` Ken Garlington
1996-08-03  0:00         ` Thomas Kendelbacher
1996-08-01  0:00     ` ++           robin
1996-08-01  0:00       ` Ken Garlington
1996-08-05  0:00         ` John McCabe
1996-08-06  0:00           ` Mark van Walraven
1996-08-06  0:00           ` Ken Garlington
1996-08-06  0:00           ` Ken Garlington
1996-08-02  0:00       ` Pascal Martin @lone
1996-08-03  0:00         ` Dr. Richard Botting
1996-08-05  0:00           ` system
1996-08-06  0:00         ` ++           robin
1996-08-08  0:00           ` Darius Blasband
1996-08-10  0:00             ` dwnoon
1996-08-12  0:00               ` Thomas Kendelbacher
1996-08-13  0:00                 ` ++           robin
1996-08-13  0:00             ` ++           robin
1996-08-13  0:00             ` Roy Gardiner
1996-08-13  0:00               ` Ken Garlington
1996-08-13  0:00               ` Lance Kibblewhite
1996-08-15  0:00             ` Richard Riehle
1996-08-05  0:00       ` Steve O'Neill
1996-08-06  0:00         ` Frank Manning
1996-08-08  0:00           ` Steve O'Neill
1996-08-09  0:00             ` Pat Rogers
1996-08-09  0:00           ` JP Thornley
1996-08-06  0:00         ` Francis Lipski
1996-08-07  0:00           ` Martin Tom Brown
1996-08-09  0:00             ` Ken Garlington
1996-08-13  0:00         ` ++           robin
1996-08-13  0:00           ` Steve O'Neill
1996-07-30  0:00   ` Ken Garlington
1996-08-02  0:00     ` Craig P. Beyers
1996-08-01  0:00   ` Jon S Anthony
1996-08-02  0:00   ` James Kanze US/ESC 60/3/141 #40763
1996-08-06  0:00   ` Stefan 'Stetson' Skoglund
1996-08-06  0:00   ` Robert I. Eachus
1996-07-26  0:00 ` Bob Gilbert
1996-07-29  0:00   ` Martin Tom Brown
1996-07-30  0:00     ` John McCabe
1996-07-31  0:00       ` Greg Bond
1996-08-03  0:00         ` John McCabe
1996-07-26  0:00 ` Theodore E. Dennison
1996-07-29  0:00   ` Ken Garlington
1996-07-26  0:00 ` JP Thornley
1996-07-29  0:00   ` Nigel Tzeng
1996-07-29  0:00   ` JP Thornley
1996-07-29  0:00   ` Ken Garlington
1996-07-30  0:00   ` Robert I. Eachus
1996-07-31  0:00     ` JP Thornley
1996-08-01  0:00       ` Alan Brain
1996-08-02  0:00         ` JP Thornley
1996-08-01  0:00   ` Ken Garlington
1996-07-27  0:00 ` Bill Angel
1996-07-30  0:00 ` Dr. Richard Botting
1996-07-30  0:00   ` David Weller
1996-07-30  0:00     ` Robert Dewar
  -- strict thread matches above, loose matches on Subject: below --
1996-08-08  0:00 Marin David Condic, 407.796.8997, M/S 731-93
1996-08-09  0:00 ` John McCabe
1996-08-13  0:00 Marin David Condic, 407.796.8997, M/S 731-93
1996-08-15  0:00 ` John McCabe
1996-08-13  0:00 Marin David Condic, 407.796.8997, M/S 731-93
1996-08-15  0:00 ` John McCabe
replies disabled

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