let* is the new var
dherman at ccs.neu.edu
Tue Mar 25 15:50:36 PDT 2008
> Is it actually letrec, or is it letrec*? The example I referred to
> (from the proposal page) would require letrec* semantics:
Let's not go too far with the Scheme analogies, since we're not talking
about Scheme. :) The idea is just like var-hoisting, only the hoisting
goes to the top of the nearest block, not the nearest function. Just
like var-hoisting, the initializer expressions are just assignments that
happen exactly where you wrote them. So indeed, like letrec*, the
initializers are evaluated in order from top to bottom.
> It's not just the RI; the official proposal is very specific about let
This is a detail that we should stamp out, I agree. I'll look for a trac
ticket and file one if there isn't one.
More information about the Es4-discuss