[R6RS] safe and unsafe; declarations

Michael Sperber sperber at informatik.uni-tuebingen.de
Fri Mar 3 13:29:59 EST 2006

William D Clinger <will at ccs.neu.edu> writes:

> Mike wrote:
>> > At priority 0, an implementation is allowed to use exception
>> > handlers that ignore even required exceptions and continue
>> > the computation with an incorrect result, or to use handlers
>> > that terminate the computation in an unpleasant fashion.
>> Does this mean that an implementation is free to do this for all
>> situations where R6RS describes that an exception must be raised, or
>> will the text something along the lines of "at safety priority 0, all
>> bets are off" for specific situations, and all places that don't have
>> it will still be required to raise exceptions?
> You spotted a bug in the wording.  My intent was that an
> implementation would be allowed to use arbitrarily perverse
> exception handlers for all exceptions, not just those
> exceptions required by the R6RS.

I'm not sure I understand this now---the main reason, I think is this
talk of exception handlers.  Isn't the R6RS mostly going to specify
what exceptions are *raised*, and leave the handling to the

Anyway, would a correct inference from what you're writing be:

"Anything within the dynamic extent of expressions within the scope of
an unsafe declaration is allowed to do something completely
unspecified whenever it would raise an exception in safe mode."


Sorry if I'm being dense---I'm really confused.

Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla

More information about the R6RS mailing list