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

Reply via email to