Thanks Robby/Carl (and Eric for answering privately) - <br><br>here&#39;s a related question:&nbsp; Does parameterize automatically uses a custodian (e.g. current-custodian) to manage resources or custodians have to be used explicitly? 
<br><br><div><span class="gmail_quote">On 4/16/07, <b class="gmail_sendername">Robby Findler</b> &lt;<a href="mailto:robby@cs.uchicago.edu">robby@cs.uchicago.edu</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Another difference between parameters and fluid-let: in a fluid-let<br>the values are not thread local, but in a parameter they are.<br><br>Robby<br><br>On 4/16/07, Carl Eastlund &lt;<a href="mailto:cce@ccs.neu.edu">cce@ccs.neu.edu
</a>&gt; wrote:<br>&gt; On 4/16/07, Yin-So Chen &lt;<a href="mailto:yinso.chen@gmail.com">yinso.chen@gmail.com</a>&gt; wrote:<br>&gt; &gt; What is the difference between using let vs parameterize?<br>&gt;<br>&gt; Let operates on bindings.&nbsp;&nbsp;It creates a new name and binds it to a
<br>&gt; value.&nbsp;&nbsp;This affects code directly within the let-body that refers to<br>&gt; the same name, providing it is not bound again (&quot;shadowed&quot;) inside the<br>&gt; let.<br>&gt;<br>&gt; Parameterize operates on parameters, which are values.&nbsp;&nbsp;It takes an
<br>&gt; existing parameter and makes it return a different value during the<br>&gt; execution of the body of the parameterize.&nbsp;&nbsp;This affects any code<br>&gt; called during that execution, even if it&#39;s in a different function,
<br>&gt; module, whatever, so long as it uses the same parameter value.<br>&gt;<br>&gt; &gt; It seems that one can use let to manipulate parameter objects (at least<br>&gt; &gt; scheme doesn&#39;t forbid it) - any issues with using it?
<br>&gt;<br>&gt; Let does not manipulate values at all.&nbsp;&nbsp;It just binds names to<br>&gt; existing values.&nbsp;&nbsp;It never changes values or their contents.<br>&gt;<br>&gt; &gt;&nbsp;&nbsp;How do I know whether or not something is a parameter versus a variable?
<br>&gt;<br>&gt; You could ask the same thing about numbers vs variables, or strings vs<br>&gt; variables.&nbsp;&nbsp;A variable is a name for a value.&nbsp;&nbsp;That value might be<br>&gt; anything: number, string, list, parameter, etc.&nbsp;&nbsp;But you should be
<br>&gt; careful never to confuse the name with what it refers to.<br>&gt;<br>&gt; And in response to the followup email: fluid-let, like let, operates<br>&gt; on variables (names), not values.&nbsp;&nbsp;Hence it would not be an<br>
&gt; &quot;extension&quot; to make it work on parameters.&nbsp;&nbsp;If you give the name of a<br>&gt; parameter to fluid-let, it will change which parameter that name<br>&gt; refers to, not the contents of the current parameter.<br>
&gt;<br>&gt; --<br>&gt; Carl Eastlund<br>&gt; _________________________________________________<br>&gt;&nbsp;&nbsp; For list-related administrative tasks:<br>&gt;&nbsp;&nbsp; <a href="http://list.cs.brown.edu/mailman/listinfo/plt-scheme">http://list.cs.brown.edu/mailman/listinfo/plt-scheme
</a><br>&gt;<br></blockquote></div><br><br clear="all"><br>-- <br><a href="http://www.yinsochen.com">http://www.yinsochen.com</a><br>...continuous learning...