[R6RS] Safe/unsafe mode
dyb at cs.indiana.edu
dyb at cs.indiana.edu
Thu Jul 13 13:58:40 EDT 2006
> Right, assuming the context of your examples is safe
> code. Please recall that reducing (lambda (x) (- x))
> to - is generally illegal even in R5RS Scheme, for
> several reasons, so you can hardly complain about it
> being illegal here.
Of course I can, since it is legal in the case I gave until you add in
your safe/unsafe semantics. Inlining to produce the same result is also
legal in the case I gave until you add in your safe/unsafe semantics. A
great many optimizations are illegal in general, including copy
propagation, but legal in specific circumstances.
Since the only purpose for using unsafe code is to increase efficiency, I
imagine I wouldn't be the only one upset to learn that unsafe declarations
effectively disable some optimizations.
Kent
More information about the R6RS
mailing list