[r6rs-discuss] [Formal] Inappropriate number of values should be defined
John Cowan wrote:
> Marcin 'Qrczak' Kowalczyk scripsit:
>
>> I would prefer to leave this undefined (detected as an error in safe mode)
>> *and* replace most uses of the unspecified value with zero values.
>> This allows to detect dubious code like:
>> (let ((x (if y (z))))
>> ...)
>
> But then you can no longer write things like:
>
> (begin
> (if (debug-mode?) (display "About to call foo\n"))
> (foo))
>
> because when debug-mode? returns false, the if will return zero values
> to the continuation created by begin.
But `begin' allows that expression to evaluate to zero or more values.
David
Received on Mon Jan 22 2007 - 11:28:21 UTC
This archive was generated by hypermail 2.3.0
: Wed Oct 23 2024 - 09:15:01 UTC