I rather like <br>  let { binding and binding and binding in  EXPR} <br><br>or let binding<br>        binding<br>        binding<br>        in EXPR<br><br><br>This leaves no question in the reader&#39;s mind about the scope of the variables. It is explicit that all variables share the same scope, which is the intent here, isn&#39;t it? <br>
<br>If you want nested levels of scope, then put another let block in the EXPR. <br><br>This is basically Haskell syntax,  perhaps I&#39;m already showing by bias.<br><br><br><div class="gmail_quote">On Thu, Mar 5, 2009 at 12:36 PM, Jonathan S. Shapiro <span dir="ltr">&lt;<a href="mailto:shap@eros-os.com">shap@eros-os.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Binding forms that introduce inner scopes should be distinct from<br>
those that merely append definitions to the current scope. I do<br>
understand that appending actually does introduce a new scope. The<br>
issue is that in one type of form the scopes end in the same place,<br>
where in the other they do not.<br>
<br>
I&#39;m currently inclined to favor a syntax very similar to OCaml:<br>
<br>
  let BINDING { and BINDING } in EXPR end<br>
<br>
and other forms similarly.<br>
<br>
<br>
Strong objections or alternatives?<br>
_______________________________________________<br>
bitc-dev mailing list<br>
<a href="mailto:bitc-dev@coyotos.org">bitc-dev@coyotos.org</a><br>
<a href="http://www.coyotos.org/mailman/listinfo/bitc-dev" target="_blank">http://www.coyotos.org/mailman/listinfo/bitc-dev</a><br>
</blockquote></div><br><br clear="all"><br>-- <br>We can&#39;t solve problems by using the same kind of thinking we used when we created them. <br>    - A. Einstein<br>