[plt-scheme] R6RS exception handling and dynamic extent [was: SXML for R6RS]
On Thu, Jul 10, 2008 at 10:08 AM, Matthew Flatt <mflatt at cs.utah.edu> wrote:
> At Thu, 10 Jul 2008 10:00:42 -0500, "Robby Findler" wrote:
>> I think I'm missing some earlier important part of this conversation
>> and I wonder if it could be said again for others who might be like
>> me?
>>
>> Why is guard causing problems (when combined with continuable
>> exceptions, etc)?
>
> Both `guard' and `with-handlers' jump out to the dynamic extent of the
> `guard' or `with-handlers' form to check whether they want to handle a
> given exception. At that point, if the right way to handle the
> exception was to continue without jumps, then it's too late.
>
> As specified by R6RS, `guard' will at least jump back in to try further
> handlers --- but that facet of `guard' isn't in our implementation.
Oh, right, I see.
Would it be possible to have guard just not jump out, and for
with-handlers to either signal an error or not handle continuable
exceptions or something like that?
Robby