From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Running a preprocessor from GPS?
Date: Thu, 30 Jul 2015 15:30:42 +0200
Date: 2015-07-30T15:30:42+02:00 [thread overview]
Message-ID: <hd6rmakocjhq.10baxe020wild.dlg@40tude.net> (raw)
In-Reply-To: 947bb170-91aa-4e99-810e-7154be9bae6a@googlegroups.com
On Thu, 30 Jul 2015 06:00:11 -0700 (PDT), EGarrulo wrote:
> On Thursday, July 30, 2015 at 1:22:36 PM UTC+2, Niklas Holsti wrote:
>> On 15-07-30 11:45 , EGarrulo wrote:
>> > Exceptions in Ada cannot ... be chained
>>
>> I'm not sure what you mean by "chained", but an Ada exception handler
>> can either raise another exception, or re-raise the same exception, for
>> handling at higher levels.
>
> By "chained", I mean that a failure in an operation can
> cause a failure in the calling operation, and so on. Let's
> imagine that the initialization of an application relies
> on reading a configuration file. If the syntax of the
> configuration file is not correct, then the routine that
> reads it will raise an exception, but this exception would
> be too low-level to be meaningful for the user. Therefore,
> it makes sense to chain this exception to another higher-
> level exception that explains what the application was
> trying to do. To the end user, this will appear as a chain
> of exceptions:
>
> - INITIALIZATION_ERROR: The application failed to initialize;
> - CONFIGURATION_ERROR: The configuration failed;
> - BAD_FORMAT: The configuration file isn't formatted correctly;
> - SYNTAX_ERROR: The value of LEVEL is not of the expected type.
>
> Basically, each exception in the chain answers the
> question "why?" Now, if you report only one of those
> exceptions, then you lose context. This is why you should
> be able to chain exceptions. Of course, you could achieve
> a similar result by concatenating messages, but this way
> you would be performing manually what the language should
> have performed automatically.
exception
when Error : Chain_Error =>
raise Chain_Error with "Worse than " & Exception_Message (Error);
end;
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2015-07-30 13:30 UTC|newest]
Thread overview: 175+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-27 14:28 Running a preprocessor from GPS? EGarrulo
2015-07-27 16:47 ` David Botton
2015-07-27 17:17 ` EGarrulo
2015-07-27 20:26 ` Randy Brukardt
2015-07-27 21:14 ` Jeffrey R. Carter
2015-07-27 22:23 ` EGarrulo
2015-07-28 7:23 ` Simon Wright
2015-07-28 11:36 ` EGarrulo
2015-07-28 21:12 ` Randy Brukardt
2015-07-28 22:11 ` EGarrulo
2015-07-28 22:41 ` EGarrulo
2015-07-29 9:52 ` G.B.
2015-07-29 20:32 ` Randy Brukardt
2015-07-29 22:32 ` EGarrulo
2015-07-29 23:51 ` Jeffrey R. Carter
2015-07-30 0:10 ` EGarrulo
2015-07-30 6:01 ` Niklas Holsti
2015-07-30 7:33 ` Björn Lundin
2015-07-30 8:03 ` EGarrulo
2015-07-30 8:08 ` Jacob Sparre Andersen
2015-07-30 8:37 ` EGarrulo
2015-07-30 8:49 ` Georg Bauhaus
2015-07-30 12:15 ` EGarrulo
2015-07-30 14:11 ` G.B.
2015-07-30 19:29 ` Jeffrey R. Carter
2015-07-30 20:53 ` EGarrulo
2015-07-30 22:52 ` Jeffrey R. Carter
2015-07-31 7:29 ` Georg Bauhaus
2015-07-31 7:53 ` gautier_niouzes
2015-07-31 8:26 ` Simon Wright
2015-07-31 9:13 ` Dmitry A. Kazakov
2015-07-31 9:31 ` EGarrulo
2015-07-31 11:01 ` Dmitry A. Kazakov
2015-07-31 13:50 ` EGarrulo
2015-07-31 16:29 ` Dmitry A. Kazakov
2015-07-31 11:26 ` Brian Drummond
2015-07-31 12:12 ` EGarrulo
2015-07-31 12:15 ` EGarrulo
2015-07-31 17:54 ` Jeffrey R. Carter
2015-07-31 18:20 ` EGarrulo
2015-07-31 18:51 ` Jeffrey R. Carter
2015-08-01 7:20 ` Simon Wright
2015-08-01 8:06 ` EGarrulo
2015-08-01 8:33 ` Simon Wright
2015-08-01 10:47 ` EGarrulo
2015-08-01 11:27 ` Simon Wright
2015-08-01 11:44 ` Niklas Holsti
2015-08-01 12:19 ` EGarrulo
2015-08-01 17:49 ` Jeffrey R. Carter
2015-08-01 18:15 ` Paul Rubin
2015-08-01 18:59 ` Jeffrey R. Carter
2015-08-01 20:30 ` Georg Bauhaus
2015-08-01 20:44 ` EGarrulo
2015-08-01 22:44 ` Jeffrey R. Carter
2015-08-01 23:39 ` EGarrulo
2015-08-02 0:02 ` Jeffrey R. Carter
2015-08-02 0:18 ` EGarrulo
2015-08-02 0:30 ` EGarrulo
2015-08-02 6:05 ` Jeffrey R. Carter
2015-08-02 8:29 ` EGarrulo
2015-08-02 19:21 ` Jeffrey R. Carter
2015-08-02 21:37 ` EGarrulo
2015-08-03 2:35 ` Jeffrey R. Carter
2015-08-02 2:53 ` Paul Rubin
2015-08-02 6:07 ` Jeffrey R. Carter
2015-08-02 8:36 ` EGarrulo
2015-08-01 16:53 ` Jeffrey R. Carter
2015-08-01 17:00 ` Jeffrey R. Carter
2015-08-01 7:48 ` Dmitry A. Kazakov
2015-07-30 8:23 ` Georg Bauhaus
2015-07-30 8:45 ` EGarrulo
2015-07-30 9:19 ` Dmitry A. Kazakov
2015-07-30 11:22 ` Niklas Holsti
2015-07-30 13:00 ` EGarrulo
2015-07-30 13:30 ` Dmitry A. Kazakov [this message]
2015-07-30 13:51 ` EGarrulo
2015-07-30 14:13 ` Dmitry A. Kazakov
2015-07-30 14:46 ` Simon Wright
2015-07-30 14:31 ` G.B.
2015-07-30 18:46 ` Randy Brukardt
2015-07-30 9:18 ` EGarrulo
2015-07-30 18:55 ` Randy Brukardt
2015-07-30 19:32 ` EGarrulo
2015-07-31 0:10 ` Randy Brukardt
2015-07-30 11:35 ` Brian Drummond
2015-07-30 13:30 ` EGarrulo
2015-07-31 11:07 ` Brian Drummond
2015-07-30 8:28 ` Pascal Obry
2015-07-30 12:00 ` EGarrulo
2015-07-30 10:01 ` Björn Lundin
2015-07-30 10:59 ` Pascal Obry
2015-07-30 11:21 ` gautier_niouzes
2015-07-30 18:35 ` Randy Brukardt
2015-07-31 15:21 ` Stefan.Lucks
2015-07-31 17:28 ` Pascal Obry
2015-08-01 11:38 ` Björn Lundin
2015-08-01 20:07 ` Stefan.Lucks
2015-08-03 23:26 ` Randy Brukardt
2015-07-30 6:08 ` Dmitry A. Kazakov
2015-07-30 6:37 ` Georg Bauhaus
2015-07-30 8:27 ` Pascal Obry
2015-07-30 9:22 ` Dmitry A. Kazakov
2015-07-30 11:51 ` EGarrulo
2015-07-30 12:23 ` Dmitry A. Kazakov
2015-07-30 13:55 ` Niklas Holsti
2015-08-30 7:03 ` David Thompson
2015-07-30 14:07 ` EGarrulo
2015-07-30 18:12 ` Jeffrey R. Carter
2015-07-30 18:51 ` EGarrulo
2015-07-30 19:27 ` Jeffrey R. Carter
2015-07-30 19:54 ` EGarrulo
2015-07-30 22:53 ` Jeffrey R. Carter
2015-07-30 23:58 ` Randy Brukardt
2015-07-30 11:54 ` EGarrulo
2015-07-30 12:42 ` Pascal Obry
2015-07-30 13:21 ` EGarrulo
2015-07-30 13:38 ` Dmitry A. Kazakov
2015-07-30 13:55 ` EGarrulo
2015-07-30 15:23 ` Niklas Holsti
2015-07-30 19:32 ` Randy Brukardt
2015-07-30 20:10 ` EGarrulo
2015-07-31 0:23 ` Randy Brukardt
2015-07-31 6:29 ` Dmitry A. Kazakov
2015-08-02 10:08 ` EGarrulo
2015-08-02 12:15 ` EGarrulo
2015-07-29 23:45 ` EGarrulo
2015-07-30 0:25 ` Jeffrey R. Carter
2015-07-30 8:12 ` EGarrulo
2015-07-30 18:01 ` Jeffrey R. Carter
2015-07-29 6:46 ` Simon Wright
2015-07-29 7:17 ` Dmitry A. Kazakov
2015-07-29 19:57 ` Randy Brukardt
2015-07-29 20:09 ` Jeffrey R. Carter
2015-07-30 18:16 ` Randy Brukardt
2015-07-29 20:38 ` Simon Wright
2015-07-30 7:50 ` Jacob Sparre Andersen
2015-07-30 14:48 ` G.B.
2015-07-30 15:58 ` Simon Wright
2015-07-30 15:13 ` EGarrulo
2015-07-30 15:21 ` EGarrulo
2015-07-30 15:29 ` G.B.
2015-07-30 16:02 ` Simon Wright
2015-07-30 16:15 ` Simon Wright
2015-07-30 16:29 ` EGarrulo
2015-07-30 17:31 ` Simon Wright
2015-07-28 10:28 ` Brian Drummond
2015-07-28 11:39 ` EGarrulo
2015-07-29 10:02 ` Brian Drummond
2015-07-29 10:29 ` Brian Drummond
2015-07-29 12:00 ` EGarrulo
2015-07-29 19:23 ` gautier_niouzes
2015-07-28 11:43 ` Björn Lundin
2015-07-28 11:51 ` Dmitry A. Kazakov
2015-07-28 12:06 ` EGarrulo
2015-07-28 12:54 ` Dmitry A. Kazakov
2015-07-28 13:18 ` EGarrulo
2015-07-28 13:49 ` EGarrulo
2015-07-28 14:02 ` Bob Duff
2015-07-28 14:57 ` G.B.
2015-07-28 15:36 ` Dmitry A. Kazakov
2015-07-29 7:15 ` Stefan.Lucks
2015-07-29 7:52 ` EGarrulo
2015-07-29 17:30 ` Stefan.Lucks
2015-07-29 18:49 ` Jeffrey R. Carter
2015-07-29 20:40 ` Randy Brukardt
2015-07-30 7:40 ` gautier_niouzes
2015-07-30 19:22 ` Randy Brukardt
2015-07-28 13:06 ` G.B.
2015-07-28 13:19 ` EGarrulo
2015-07-28 20:55 ` Randy Brukardt
2015-07-28 22:31 ` EGarrulo
2015-07-29 20:09 ` Randy Brukardt
2015-07-29 22:40 ` EGarrulo
2015-07-28 12:07 ` Björn Lundin
2015-07-31 19:44 ` Per Sandberg
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox