Or possibly a universal catch, with the $@.warning and $@.die or
something, so that you can check it.

Ilya

> -----Original Message-----
> From: David Whipp [mailto:[EMAIL PROTECTED]] 
> Sent: Tuesday, January 08, 2002 7:25 PM
> To: Perl6-Language (E-mail)
> Subject: catching warnings
> 
> 
> Perl6 is going to introduce a non-resumable throw/catch 
> mechanism to replace die/$@. (I assume that die will be 
> synonymous with throw, for
> compatibility.)
> 
> But what about warnings? I frequently find myself wanting to 
> "catch" warnings (e.g. to add extra context around a 
> library's "use of undefined value" warning; or to die when a 
> library issues a warning). Its possible to hack this but, as 
> far as I am aware, there is no clean mechanism for resumable 
> exceptions. Could perl6 add such a capability? I don't know 
> what the correct syntax would be, but the pseudo code might look like:
> 
> sub foo
> {
>   try
>   {
>     $a = undef + 1 # replace this with something more interesting!
>   }
>   catch:warn
>   {
>     print "$(datestamp): $@\n";
>     resume unless $::warn_count++ > 10;
>     die "warning-limit exceeded";
>   }
> }
> 
> It doesn't have to be in the core language, but it would be 
> nice if it was easy to add as a module.
> 
> Dave.
> 

Reply via email to