comp.lang.ada
 help / color / mirror / Atom feed
From: Ludovic Brenta <ludovic@ludovic-brenta.org>
Subject: Re: Get_Line problem (GNAT bug?)
Date: Thu, 07 Dec 2006 14:35:06 +0100
Date: 2006-12-07T14:35:06+01:00	[thread overview]
Message-ID: <873b7rde2d.fsf@ludovic-brenta.org> (raw)
In-Reply-To: 7fm8le.pa5.ln@hunter.axlog.fr

Jean-Pierre Rosen <rosen@adalog.fr> writes:
> I beg to differ. Otherwise, they would be called "errors" or "abnormal".
> An exception corresponds to an "exceptional" event, i.e. something
> that prevents usual processing, and forces you to an exceptional
> handling. If you consider that normal processing (normally the body of
> a loop) is the rule, it is an exception to the rule. And EOF certainly
> matches this definition (as is an error, of course, but it is not the
> only case).
>
> Exceptions are a useful tool in the programmers tool box. The narrow
> view of exceptions as just a way to handle errors is a mistake that
> prevents elegant solutions to some problems, in my view, and I've been
> constantly fighting against that.

I agree with you in the general case where you have an Ada run-time
library that propagates exceptions.  But there are cases where your
Ada run-time library does not propagate exceptions, or where you don't
have a run-time library at all.  In those particular cases, you have
to use the "narrow view" whereby an exception is something so
exceptional that it "should never happen" (tm).

In the OP's case, handling EOF as an exception is just fine, since
file I/O implies the existence of a suitable run-time library.

-- 
Ludovic Brenta.



  reply	other threads:[~2006-12-07 13:35 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-12-06 14:25 Get_Line problem (GNAT bug?) Maciej Sobczak
2006-12-06 18:06 ` Adam Beneschan
2006-12-06 20:34 ` Gautier
2006-12-06 21:47 ` Dmitry A. Kazakov
2006-12-06 23:40   ` Adam Beneschan
2006-12-07  0:02     ` Björn Persson
2006-12-07  1:09       ` Adam Beneschan
2006-12-07  1:28         ` Björn Persson
2006-12-07  5:00         ` Jeffrey R. Carter
2006-12-07  8:26   ` Maciej Sobczak
2006-12-07  9:21     ` Jean-Pierre Rosen
2006-12-07 13:35       ` Ludovic Brenta [this message]
2006-12-07 22:23       ` Robert A Duff
2006-12-07 10:22     ` Dmitry A. Kazakov
2006-12-07 14:51       ` Maciej Sobczak
2006-12-07 16:29         ` Dmitry A. Kazakov
2006-12-08  8:22           ` Maciej Sobczak
2006-12-07 22:50       ` Robert A Duff
2006-12-08  0:13         ` Randy Brukardt
2006-12-08  4:04         ` Larry Kilgallen
2006-12-08  9:11         ` Dmitry A. Kazakov
2006-12-07  9:14   ` Jean-Pierre Rosen
2006-12-07  3:34 ` Steve
2006-12-07 17:42   ` Adam Beneschan
2006-12-07 22:35     ` Robert A Duff
replies disabled

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