[r6rs-discuss] [OT] Should compilers preserve termination?
bear
bear at sonic.net
Fri Mar 9 12:48:36 EST 2007
On Fri, 9 Mar 2007, Paul Schlie wrote:
>> bear wrote:
>> ...
>> I think we come down to this point, and my final recommendation
>> on the matter - which is more broadly applicable than just talking
>> about nontermination itself. The standard needs to say explicitly
>> that if an implementation can prove that there is only one possible
>> return value from an error-free execution of some code, then
>> it may elide the execution of the code and return that value.
>> ...
>
>(let wait-for-x () (if (not (eqv? (read-char) #\x)) (wait-for-x)))
>
>for example, can never be justifiably optimized away regardless of
>it's resulting value (if any).
Right. Good catch. Does
s/error-free/error-and-side-effect-free/
fix the problem?
Bear
More information about the r6rs-discuss
mailing list