On Wed, Jun 14, 2006 at 08:59:02PM -0700, Chip Salzenberg wrote:
: Are Parrot exceptions now, in fact, resumable?  If they are, is that
: important?  Is anyone actually resuming execution after exception handlers
: are called?  I think we _can_ keep resumability, but I'm not sure I want us
: to, and I definitely don't want to bother if no one wants it.

The current thought for Perl 6 is that warnings are essentially just
resumable control exceptions that by default are caught only by the
outermost exception handler, which by default resumes them.  But any
exception handler in the dynamic scope may then catch one and turn
it fatal.  This gives us dynamic as well as lexical control of warnings
without inventing a mechanism separate from existing control exceptions.

On the other hand, I think we've also said that exceptions are
resumable only if the thrower includes as part of the exception
object a continuation to resume at, which presumably warn() does.
So maybe you don't need to do anything special to make exceptions
resumable for Perl 6, assuming throwing the exception doesn't clobber
the continuation somehow.

On the gripping hand, it looks like this is missing from the specs...

Larry

Reply via email to