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

Re: [Scheme-reports] [scheme-reports-wg1] Erratum for letrec* definition

Alex Shinn scripsit:

> I'm not sure we need bother clarifying this.  Interleaving
> assignment is both the most natural and only realistic
> interpretation of the existing text.  You have to stretch
> it quite a lot to think that it allows the <init>s to be
> evaluated outside the order of the assignments.

Well, someone on #scheme was complaining about it being unclear,
and when I looked at it, I realized that I had never really
understood letrec* before.  He was under the impression that
letrec* is to letrec as let* is to let; that is, that letrec*
expands to nested letrecs.  Anyway, Riastradh set both of us
straight, and clarified that although some Schemes implement
letrec as letrec*, this is definitely a bug.  See the page
LetrecStar for which Schemes do what now.

So since it had confused at least one user, and I didn't correctly
understand it when I looked at it, I thought it would be good
to add a clarification.

John Cowan        http://ccil.org/~cowan   cowan@x
Lope de Vega: "It wonders me I can speak at all.  Some caitiff rogue
did rudely yerk me on the knob, wherefrom my wits yet wander."
An Englishman: "Ay, belike a filchman to the nab'll leave you
crank for a spell." --Harry Turtledove, Ruled Britannia

Scheme-reports mailing list