[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: letrec suggestion

David Carlton writes of letrec:
    In particular, the last bit says that all of the inits have to be
    evaluated before the respective variables are assigned their values.
    I think that this is an unnecessary restriction on implementations -
    implementations should be free to bind the variables to the proper
    values whenever they want to.  (In fact, many implementations don't
    obey the above restriction.)  Was the above section really meant to be
    so restrictive, and, if so, why?

No, the description of letrec wasn't meant to be so restrictive.
On the other hand, I think it is easier and better to keep the R4RS
description of letrec, while changing the implementations, than to
change the description of letrec to match its common implementation.

There isn't any great rush to settle this, because no one in his/her
right mind would write a program that depends on this.