The habit in functional languages has been to use something like "let" as the top-level binding form. This grants economy of mechanism, but it leads to a design inconsistency.
On the one hand, the bindings in a LET should go out of scope when the let does. If so, it should follow that in the following code: let x = 5 in ... let x = 3 in ... x is not rebound because it has gone out of scope. Most functional languages nonetheless diagnose this as a rebinding. Does anybody else find this distasteful and confusing? Jonathan
_______________________________________________ bitc-dev mailing list [email protected] http://www.coyotos.org/mailman/listinfo/bitc-dev
