Print

Print


> Date:          Sun, 29 Feb 2004 10:27:18 -0500
> From:          Gerry Thomas <[log in to unmask]>

> Fortunately the Ariane crash didn't involve loss of life.
> The Therac-25 fiasco, a cascade of calamities that included undetected
> integer overflow (in PDP-11 assembler and not from fp to integer conversion
> but a straight wrap around of an integer counter on overflow), resulted in
> the death of several cancer victims. Like Conrad Black, Atomic Energy of
> Canada Limited tried to shirk responsibility but happily the courts ruled
> otherwise.
>
> Even F2003 doesn't have provision for detecting integer overflow.

But PL/I has had such provision since 1966 (it handles real-time
applications well)..

BTW, the Ariane integer overflow was not the first such
occurrence.
        In 1981 the manned space shuttle STS-2 suffered from an integer
out of range used in a computed goto (the language was assembler).
Luckily the error was picked up by a chance event -- viz., launch
was delayed by a small accident.
        The astronauts put in some extra practice for re-entry,
when they found that the code got stuck in a loop with the
operating system.
        In the case of Ariane, one would have thought that they would
have put in a little extra effort to make sure that they
did not repeat the STS failure.

> Ciao,
> Gerry T.