comp.lang.ada
 help / color / mirror / Atom feed
From: kilgallen@eisner.decus.org (Larry Kilgallen)
Subject: Re: Exception problem
Date: 1997/02/24
Date: 1997-02-24T00:00:00+00:00	[thread overview]
Message-ID: <1997Feb24.124153.1@eisner> (raw)
In-Reply-To: 3311BFC4.7576@fs2.assist.uci.edu


In article <3311BFC4.7576@fs2.assist.uci.edu>, Larry Coon <larry@fs2.assist.uci.edu> writes:

> By the way, that brings up another question....that of when it's
> appropriate to use exceptions.  In C++, for example, you wouldn't want
> to throw an exception because your number should be positive and you got
> a negative.  In C++, you're using an int to represent this number, and
> for an int to be -3 is not an exceptional condition.  However, in Ada
> subtypes and derived types allow you to declare integers for which -3
> truly is an exceptional condition, making it very appropriate to raise
> (see, I even got the terminology right!) an exception.
> 
> Writing that code almost made me feel guilty for using exceptions the
> wrong way, and I wanted to make sure I'm thinking about them in the
> right way in Ada.

Implementations are likely to use hardware exception mechanisms and
other non-speed-optimized techniques to implement something called
an "exception" in any language.  Thus you should not count on using
exceptions as a "normal" part of processing which is supposed to run
efficiently.

In this particular case, the decision should probably based not on
the fact that typing wrong characters may or may not be "normal" for
your user population, but rather on the fact that anything taking
keyboard input from humans has no hope of running fast enough to
waste many cycles anyway.  Considering that you may type out an
error message or something similar (I forget the original code)
in the wrong keystroke case, the overhead of depending on exceptions
might be lost in the noise of other activity anyway.

Besides, somebody ought to be testing the exception handling of
compilers on a regular basis -- I nominate you :-)

Larry Kilgallen




  reply	other threads:[~1997-02-24  0:00 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-02-18  0:00 Exception problem Larry Coon
1997-02-18  0:00 ` Michael Feldman
1997-02-19  0:00   ` Larry Coon
1997-02-19  0:00 ` Keith Allan Shillington
1997-02-19  0:00 ` Joerg Rodemann
1997-02-19  0:00   ` Mats Weber
1997-02-19  0:00 ` David C. Hoos, Sr.
1997-02-19  0:00   ` Robert Dewar
1997-02-19  0:00   ` Larry Coon
1997-02-22  0:00 ` Arthur Evans Jr
1997-02-24  0:00   ` Larry Coon
1997-02-24  0:00     ` Larry Kilgallen [this message]
1997-02-24  0:00       ` Larry Coon
1997-02-25  0:00         ` Fergus Henderson
1997-02-25  0:00     ` Do-While Jones
1997-03-09  0:00       ` John Volan
1997-03-09  0:00         ` Robert Dewar
1997-03-12  0:00         ` Keith Thompson
1997-02-25  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