From: Ken Garlington <GarlingtonKE@lmtas.lmco.com>
Subject: Re: Ada and Automotive Industry
Date: 1996/12/18
Date: 1996-12-18T00:00:00+00:00 [thread overview]
Message-ID: <32B8AF89.CA@lmtas.lmco.com> (raw)
In-Reply-To: E2MvrB.Ip7@world.std.com
Robert A Duff wrote:
>
> OK, I'll buy that. How about the following rule of thumb: It's OK to
> raise C_E explicitly if the purpose is to indicate a bug in the program?
Actually, I like to raise Program_Error when this happens. Its' roughly
equivalent to the "WTF?" message we used to generate in our FORTRAN
tools
when we reached a condition in the program that "shouldn't happen."
> That is, if the exception occurs, you want the program to stop running,
> not do any more damage, and go into the debugger and figure out what
> went wrong (or use a stack traceback or whatever). On the other hand,
> if you want callers to *handle* the exception, and recover from it, you
> ought to define your own exception name.
>
> My reasoning is that handlers for C_E are questionable -- you probably
> don't know for sure whether you got there from a range check, or your
> explicit raise, so you have to worry about 11.6 issues. It's possible,
> but extremely tricky, to write correct exception handlers for C_E, given
> 11.6. I suspect that few programmers understand 11.6 -- they just use a
> simplified rule, which says "Don't handle C_E". That's good -- it's
> much simpler than the real 11.6 rules, and works fine in the vast
> majority of cases.
>
> (By the way, when I say "handle" here, I mean a handler that really
> handles the situation -- not one that does clean-up-then-re-raise.)
>
> So, in your divide-by-zero example, it seems fine to raise C_E, if you
> believe that exception will always kill the program, if it happens.
>
> - Bob
--
LMTAS - The Fighter Enterprise - "Our Brand Means Quality"
For job listings, other info: http://www.lmtas.com or
http://www.lmco.com
next prev parent reply other threads:[~1996-12-18 0:00 UTC|newest]
Thread overview: 166+ messages / expand[flat|nested] mbox.gz Atom feed top
1996-12-05 0:00 Ada and Automotive Industry 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 ` Keith Thompson
1996-12-18 0:00 ` Keith Thompson
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 [this message]
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-17 0:00 ` Robert I. Eachus
1996-12-20 0:00 ` When to raise predefined exceptions (was: Ada and the Automotive Industry) James Rogers
1996-12-22 0:00 ` Robert Dewar
1996-12-20 0:00 ` Ted Dennison
-- strict thread matches above, loose matches on Subject: below --
1996-12-13 0:00 Ada and Automotive Industry Franco Mazzanti
[not found] <1996Dec11.220521.525@decus.org.nz>
1996-12-11 0:00 ` Ken Garlington
1996-12-11 0:00 Franco Mazzanti
1996-12-11 0:00 ` Robert Dewar
1996-12-13 0:00 ` Robert I. Eachus
1996-12-10 0:00 Franco Mazzanti
[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-12 0:00 James Thiele
1996-11-13 0:00 ` Frank Manning
1996-11-13 0:00 ` Robert Dewar
1996-11-15 0:00 ` Ken Garlington
1996-11-13 0:00 ` Ken Garlington
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 ` 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 ` Ken Tindell
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-24 0:00 ` Richard Kenner
1996-11-25 0:00 ` Richard Riehle
1996-11-25 0:00 ` Ken Tindell
1996-11-26 0:00 ` John Dammeyer
1996-11-26 0:00 ` Ken Garlington
[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-11 0:00 ` Norman H. Cohen
1996-11-14 0:00 ` Robert I. Eachus
1996-11-15 0:00 ` William P. Milam
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 ` Matthew Heaney
1996-11-11 0:00 ` Robert Dewar
1996-11-08 0:00 ` Ken Garlington
[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 ` John Howard
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 ` William P. Milam
1996-11-21 0:00 ` James Weaver
1996-11-21 0:00 ` Robert I. Eachus
1996-11-22 0:00 ` Chris Hills
1996-11-22 0:00 ` Jon S Anthony
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 ` Ken Garlington
1996-12-03 0:00 ` Ted Dennison
1996-12-03 0:00 ` George Romanski
1996-12-05 0:00 ` Ken Tindell
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