comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: About String
Date: Sun, 8 Jun 2008 09:35:31 +0200
Date: 2008-06-08T09:35:32+02:00	[thread overview]
Message-ID: <x26ph24q0srg.yccve8hoi66z$.dlg@40tude.net> (raw)
In-Reply-To: 484b802a$0$23844$4f793bc4@news.tdc.fi

On Sun, 08 Jun 2008 09:47:30 +0300, Niklas Holsti wrote:

> The solution is just to add one more "begin..end" block, enclosing 
> the "declare .. begin .. end", and handle the exceptions in this 
> outer "begin..end" block. Or handle the exceptions in the 
> subprogram's "begin..end" block and nest the "declare..begin..end" 
> within the subprograms "begin..end".
> 
> That said, I admit that I, too, have made this mistake once or 
> twice. But not lately.

If exceptions were contracted such, quite nasty, errors could be detected
at compile time.

> I wonder if it would be a good idea for Ada to allow an exception 
> handler also in the "declare" part, as follows:
> 
>     -- NOT Ada!
>     declare <some variables>
>     exception <handle exceptions raised in the declarations>
>     begin <some statements>
>     exception <handle exceptions raised in the statements>
>     end;
> 
> Of course, in this proposal the declaration-exception handler would 
> not have access to the declared variables.

But then, for regularity sake, you would need to add exception handling to
all declarative parts:

package A is
    <some declarations>
exception
    <handling elaboration problems of A, HOW?>  (:-))
end A;

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2008-06-08  7:35 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-06 17:29 About String Sébastien Morand
2008-06-07 16:18 ` Simon Wright
2008-06-07 17:01   ` Pascal Obry
2008-06-07 22:13     ` Chris Moore
2008-06-08  6:47       ` Niklas Holsti
2008-06-08  7:35         ` Dmitry A. Kazakov [this message]
2008-06-08 10:29           ` Sebastien Morand
2008-06-08 10:53             ` Dmitry A. Kazakov
2008-06-08 11:14           ` Niklas Holsti
2008-06-08 13:16             ` Dmitry A. Kazakov
2008-06-08 17:17               ` Niklas Holsti
2008-06-09  7:26                 ` Dmitry A. Kazakov
2008-06-08 11:48           ` Martin
2008-06-08 13:17             ` Conditional declarations (was: About String) Dmitry A. Kazakov
2008-06-08 18:26           ` About String Chris Moore
2008-06-08 18:32         ` Robert A Duff
2008-06-08 20:51           ` Maciej Sobczak
2008-06-08 21:19             ` Robert A Duff
2008-06-09  7:14               ` Dmitry A. Kazakov
2008-06-09  9:43                 ` Georg Bauhaus
2008-06-09 10:25                   ` Dmitry A. Kazakov
2008-06-09 10:42                     ` Sébastien Morand
2008-06-09 11:43                     ` Georg Bauhaus
2008-06-09 12:03                       ` Dmitry A. Kazakov
2008-06-15 19:38                 ` Robert A Duff
2008-06-15 20:52                   ` Dmitry A. Kazakov
2008-06-15 22:06                     ` Robert A Duff
2008-06-16  8:31                       ` Dmitry A. Kazakov
2008-06-16 19:17                         ` Robert A Duff
2008-06-16 20:30                           ` Dmitry A. Kazakov
2008-06-16 22:02                           ` Georg Bauhaus
2008-06-16 23:04                             ` Robert A Duff
2008-06-09 11:00               ` Georg Bauhaus
2008-06-09 14:27                 ` Britt Snodgrass
2008-06-15 19:50                   ` Robert A Duff
2008-06-15 19:48                 ` Robert A Duff
2008-06-08 11:13     ` Simon Wright
2008-06-08 19:03       ` Sebastien Morand
replies disabled

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