[plt-scheme] Chaining exception handlers between threads
Ok, I think my confusion arose from two sources:
- IIRC the parameter current-exception-handler stored the exception
handler in 37x
- I don't think the docs actually state what an exception handler is, beyond:
"A handler to catch exceptions can be associated with a
continuation frame though
a continuation mark (whose key is not directly accessible)."
http://docs.plt-scheme.org/reference/Evaluation_Model.html#(part~20exn-model)
I overlooked this so I had a faulty model of how continuation
handlers interacted with threads.
Thanks,
N.
On Wed, Feb 27, 2008 at 1:41 PM, Matthew Flatt <mflatt at cs.utah.edu> wrote:
> At Mon, 25 Feb 2008 21:41:49 +0000, "Noel Welsh" wrote:
> > Thanks. Got it working following Robby's suggestion. Should the
> > documentation note that the uncaught-exception-handler is a
> > non-preserved value? I assume that's what is going on here.
>
> No, `uncaught-exception-handler' is a normal parameter.
>
> Maybe you have in mind that `with-handlers' and
> `call-with-exception-handler' set the parameter? They don't. The
> current exception handler is determined separately from the
> parameterization --- unless there isn't a handler in the current
> continuation, in which case `uncaught-exception-handler' is used.
>
> Matthew