[From nobody Wed Oct 28 23:33:00 2009
Subject: Re: [r6rs-discuss] Implicitly Concurrent Scheme
From: Ray Dillinger &lt;bear@sonic.net&gt;
To: Marc Feeley &lt;feeley@iro.umontreal.ca&gt;
In-Reply-To: &lt;25221400-C3DC-4750-888E-56A9C43233C3@iro.umontreal.ca&gt;
References: &lt;20091027190527.9DCBF51D8D7@voluntocracy.org&gt;
	&lt;20091027225331.07e53c71@neutron&gt;
	&lt;20091028163854.GE12985@mercury.ccil.org&gt;
	&lt;C348E9C9-3375-4629-A21D-AB63C4B29D74@iro.umontreal.ca&gt;
	&lt;20091028205308.GI12985@mercury.ccil.org&gt;
	&lt;25221400-C3DC-4750-888E-56A9C43233C3@iro.umontreal.ca&gt;
Content-Type: text/plain
Message-Id: &lt;1256786854.27899.1.camel@janus.pagansexcult.org&gt;
Mime-Version: 1.0
X-Mailer: Evolution 2.22.3.1 
Date: Wed, 28 Oct 2009 20:27:39 -0700
Content-Transfer-Encoding: 7bit

On Wed, 2009-10-28 at 21:54 -0400, Marc Feeley wrote:
&gt; On 2009-10-28, at 4:53 PM, John Cowan wrote:
&gt; 
&gt; &gt; Marc Feeley scripsit:
&gt; &gt;
&gt; &gt;&gt; Not true.  Lazy-task creation will do a very good job dynamically.
&gt; &gt;&gt; Read my PhD thesis for details:
&gt; &gt;
&gt; &gt; I confess to not having read it yet, but it appears to be about  
&gt; &gt; futures,
&gt; &gt; which are directly inserted into code by the programmer, not inferred
&gt; &gt; by the implementation for *every* argument of *every* call.
&gt; 
&gt; The overhead is so low that a compiler could automatically insert them  
&gt; for every formal parameter of procedure calls (except when they are  
&gt; trivial expressions like constants, variable references, or calls to  
&gt; primitives with trivial expression arguments).

Variable references are not &quot;trivial&quot; expressions w/r/t lazy 
evaluation, unless they are immutable.  The time of evaluation
can make a difference.

			Bear



]
