[plt-scheme] to define, or to let

From: Richard Cleis (rcleis at mac.com)
Date: Sat Mar 20 13:08:11 EST 2004

PLT allows E2 to depend on a's value even with the language set to 
R5RS, so letrec appears to be let*rec.

rac

On Mar 20, 2004, at 10:21 AM, Eli Barzilay wrote:

> On Mar 20, Richard C. Cobbe wrote:
>> (letrec ((a E1)
>>          (b E2))
>>   E3)
>>
>> where E1, E2, and E3 are arbitrary expressions.
>>
>> R5RS states that evaluating E1 cannot require the value of b, and
>> that evaluating E2 cannot require the value of a.  If such
>> dependencies exist, the results are undefined.  (It's entirely
>> possible that MzScheme does define the results in this case; I don't
>> remember, and I'm in the middle of rebuilding DrScheme so I can't
>> check the helpdesk.)
>
> It does allow E2 to depend on a's value.
>
> -- 
>           ((lambda (x) (x x)) (lambda (x) (x x)))          Eli 
> Barzilay:
>                   http://www.barzilay.org/                 Maze is 
> Life!



Posted on the users mailing list.