[Scheme-reports] Formal Comment: continuation used when 'guard' re-raises an exception Richard Kelsey 29 Jun 2012 17:08 UTC

Formal Comment

Submitter's name: Richard Kelsey
Submitter's email: kelsey at s48.org
Relevant draft: r7rs draft 6

Type: clarification
Priority: minor
Relevant section of draft: Derived expressions

Summary: The continuation used when 'guard' re-raises an exception isn't specified.

Page 19, Exception Handling (Handling should be lower case, by the way)

  "If every cond's test evaluates to #f and there is no else
   clause, then raise-continuable is re-invoked on the raised object
   within the dynamic environment of the original call to raise except
   that the current exception handler is that of the guard expression."

I think that the intent is that the raise-continuable have the
same continuation as the handler installed by guard, but it
doesn't actually say this.  Also, the original call might have
been raise or raise-continuable.  I suggest changing this to:

  "If every cond's test evaluates to #f and there is no
   else clause, then raise-continuable is invoked on the raised
   object with the continuation and dynamic environment of the
   installed exception handler's invocation, except that the
   current exception handler is that of the guard expression."

                             -Richard Kelsey

_______________________________________________
Scheme-reports mailing list
Scheme-reports@scheme-reports.org
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports