comp.lang.ada
 help / color / mirror / Atom feed
From: rav@goanna.cs.rmit.edu.au (robin)
Subject: Re: Ariane 5 failure
Date: 1996/11/08
Date: 1996-11-08T00:00:00+00:00	[thread overview]
Message-ID: <55ucvc$msi$1@goanna.cs.rmit.edu.au> (raw)
In-Reply-To: 32765410.F6A@lmtas.lmco.com


	Ken Garlington <garlingtonke@lmtas.lmco.com> writes:

	>Marin David Condic, 561.796.8997, M/S 731-93 wrote:
	>> 
	>> robin <rav@GOANNA.CS.RMIT.EDU.AU> writes:
	>> >---The issue was not the addition of a new exception handler.
	>> >The issue was that a magnitude check should have been
	>> >performed on a conversion from double precision floating
	>> >point to 16-bit integer, but it wasn't.
	>> >Of course, having an exceptin handler for this specific purpose
	>> >would have helped, and should have been included as a fallback.
	>> >
	>> >        >Assuming that a new exception _handler_ had been added, then it _might
	>> >made
	>> >        >a difference.
	>> >
	>> >You can be absolutely certain that it would have helped.
	>> >
	>>     procedure ARIANE_FIVE_OPERATION is
	>>         X   : FLOAT range -65536.0..65535.0 := 65535.0 ;
	>>         Y   : INTEGER range -32768..32767 := 0 ;
	>>     begin
	>>         if (X not in -32768.0..32767.0) then
	>>             SHUT_DOWN_THE_CHANNEL_AND_PASS_CONTROL_TO_THE_OTHER_SIDE ; --Boom!
	>>         else
	>>             Y := INTEGER (X) ;
	>>         end if ;
	>>     end ARIANE_FIVE_OPERATION ;
	>> 
	>>     *Absolutely* certain?

---Absolutely.  The Report stated that the best estimate of the
value could have been used.

Thus:

   IF X > 32767 THEN
	Y = 32767;
   ELSE IF X < -32767 THEN
	Y = -32767;
   ELSE
	Y = X;

but back to the point, which you've missed apparently, which is that
the overflow could have been trapped (locally), as a fallback:

with a simple ON FIXEDOVERFLOW statement.

	>Well, in PL/I, it won't permit an exception handler to shut down the channel. :)

	>>     Seems that the above algorithm *DOES* have runtime checks to
	>>     constrain the assignment of a float to an integer, yet the
	>>     accommodation is still a *BAD* engineering decision.

You have to be joking.

	>> We can polish
	>>     and polish and polish the software all we want and perform all
	>>     sorts of runtime checks, but if the accommodation remains wrong,
	>>     we're polishing a turd.
	>> 
	>>     MDC
	>> 
	>> Marin David Condic, Senior Computer Engineer    ATT:        561.796.8997
	>> M/S 731-96                                      Technet:    796.8997
	>> Pratt & Whitney, GESP                           Fax:        561.796.4669
	>> P.O. Box 109600                                 Internet:   CONDICMA@PWFL.COM
	>> West Palm Beach, FL 33410-9600                  Internet:   CONDIC@FLINET.COM




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

Thread overview: 104+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-10-28  0:00 Ariane 5 failure Marin David Condic, 561.796.8997, M/S 731-93
1996-10-29  0:00 ` Ken Garlington
1996-11-08  0:00   ` robin [this message]
  -- strict thread matches above, loose matches on Subject: below --
1996-10-31  0:00 Marin David Condic, 561.796.8997, M/S 731-93
1996-10-28  0:00 Marin David Condic, 561.796.8997, M/S 731-93
1996-10-21  0:00 Marin David Condic, 407.796.8997, M/S 731-93
1996-10-22  0:00 ` Adam Beneschan
1996-10-16  0:00 Marin David Condic, 407.796.8997, M/S 731-93
1996-10-18  0:00 ` Ken Garlington
1996-10-19  0:00   ` Frank Manning
1996-10-21  0:00     ` Norman H. Cohen
1996-10-14  0:00 Marin David Condic, 407.796.8997, M/S 731-93
1996-10-15  0:00 ` Robert I. Eachus
1996-10-15  0:00   ` Robert Dewar
1996-10-16  0:00     ` Michael F Brenner
1996-10-16  0:00       ` Robert Dewar
1996-10-23  0:00 ` robin
1996-10-03  0:00 Marin David Condic, 407.796.8997, M/S 731-93
1996-10-03  0:00 Marin David Condic, 407.796.8997, M/S 731-93
1996-10-03  0:00 Marin David Condic, 407.796.8997, M/S 731-93
1996-10-01  0:00 Marin David Condic, 407.796.8997, M/S 731-93
1996-10-02  0:00 ` Robert I. Eachus
1996-10-02  0:00   ` Ken Garlington
1996-10-02  0:00 ` Matthew Heaney
1996-10-04  0:00   ` Ken Garlington
1996-10-05  0:00     ` Robert Dewar
1996-10-06  0:00       ` Keith Thompson
1996-10-10  0:00       ` Ken Garlington
1996-10-14  0:00       ` Matthew Heaney
1996-10-15  0:00         ` Robert Dewar
1996-10-16  0:00         ` Ken Garlington
1996-10-18  0:00           ` Keith Thompson
1996-10-18  0:00             ` Ken Garlington
1996-10-18  0:00             ` Samuel T. Harris
1996-10-21  0:00               ` Ken Garlington
1996-10-23  0:00           ` robin
1996-10-01  0:00 Marin David Condic, 407.796.8997, M/S 731-93
1996-10-02  0:00 ` Alan Brain
1996-10-02  0:00   ` Ken Garlington
1996-10-02  0:00     ` Matthew Heaney
1996-10-04  0:00       ` Robert S. White
1996-10-05  0:00         ` Robert Dewar
1996-10-05  0:00         ` Alan Brain
1996-10-06  0:00           ` Robert S. White
1996-10-03  0:00     ` Alan Brain
1996-10-04  0:00       ` Ken Garlington
1996-10-01  0:00 Marin David Condic, 407.796.8997, M/S 731-93
1996-10-02  0:00 ` Ken Garlington
     [not found] <agrapsDy4oJH.29G@netcom.com>
1996-09-25  0:00 ` @@           robin
1996-09-25  0:00   ` Michel OLAGNON
1996-09-25  0:00     ` Byron Kauffman
1996-09-25  0:00       ` A. Grant
1996-09-25  0:00         ` Ken Garlington
1996-09-26  0:00         ` Byron Kauffman
1996-09-27  0:00           ` A. Grant
1996-09-26  0:00         ` Sandy McPherson
1996-09-25  0:00     ` Chris Morgan
1996-09-25  0:00   ` Bob Kitzberger
1996-09-26  0:00     ` Ronald Kunne
1996-09-26  0:00       ` Matthew Heaney
1996-09-27  0:00         ` Wayne Hayes
1996-09-27  0:00           ` Richard Pattis
1996-09-29  0:00             ` Chris McKnight
1996-09-29  0:00             ` Alan Brain
1996-09-29  0:00             ` Dann Corbit
1996-10-01  0:00             ` Ken Garlington
1996-09-27  0:00         ` Ronald Kunne
1996-09-27  0:00           ` Lawrence Foard
1996-10-04  0:00             ` @@           robin
1996-09-28  0:00           ` Ken Garlington
1996-09-28  0:00             ` Ken Garlington
1996-09-29  0:00           ` Alan Brain
1996-09-29  0:00             ` Robert A Duff
1996-09-30  0:00               ` Wayne L. Beavers
1996-10-01  0:00                 ` Ken Garlington
1996-10-01  0:00                   ` Wayne L. Beavers
1996-10-01  0:00                     ` Ken Garlington
1996-10-02  0:00                       ` Sandy McPherson
1996-10-03  0:00                 ` Richard A. O'Keefe
1996-10-01  0:00             ` Ken Garlington
1996-09-28  0:00         ` Ken Garlington
1996-09-27  0:00       ` Ken Garlington
1996-09-27  0:00       ` Alan Brain
1996-09-28  0:00         ` Ken Garlington
1996-09-29  0:00       ` Louis K. Scheffer
1996-09-27  0:00   ` John McCabe
1996-10-01  0:00     ` Michael Dworetsky
1996-10-04  0:00       ` Steve Bell
1996-10-07  0:00         ` Ken Garlington
1996-10-09  0:00         ` @@           robin
1996-10-09  0:00           ` Steve O'Neill
1996-10-12  0:00             ` Alan Brain
1996-10-04  0:00     ` @@           robin
1996-10-04  0:00       ` Michel OLAGNON
1996-10-09  0:00         ` @@           robin
1996-10-04  0:00       ` Joseph C Williams
1996-10-06  0:00         ` Wayne Hayes
1996-10-17  0:00       ` Ralf Tilch
1996-10-17  0:00         ` Ravi Sundaram
1996-10-22  0:00           ` shmuel
1996-10-22  0:00             ` Jim Carr
1996-10-24  0:00               ` hayim
1996-10-25  0:00                 ` Ken Garlington
1996-10-25  0:00                 ` Michel OLAGNON
replies disabled

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