Hi Andy,
Andy Wingo writes:
> Not sure what to do. The part of me that wants to do aggressive CSE
> wants to transform to a form that fixes order of evaluation, but the
> part of me that wants to be able to shuffle values using the Dybvig
> algorithm wants to do the direct form
Andy Wingo skribis:
> Not sure what to do. The part of me that wants to do aggressive CSE
> wants to transform to a form that fixes order of evaluation, but the
> part of me that wants to be able to shuffle values using the Dybvig
> algorithm wants to do the direct form. Dunno!
On 18 June 2013 06:14, Andy Wingo wrote:
> If I understand correctly, I think this is going in the wrong
> abstractive direction -- CPS is nice because it's a limpid medium for
> program transformations that also corresponds neatly to runtime. With
> this sort of thing we'd be moving farther away
Hello,
On Mon, Jun 17, 2013 at 1:14 PM, Andy Wingo wrote:
>
> So it's exactly like `let', then? ;)
>
Oh, yes, you're right. :-)
>
> > I think we could make CSE work with this, don't you think?
>
> Oh sure. It works with let already. It's just not as effective.
> > To translate this into CP
Hi :)
On Mon 17 Jun 2013 15:49, Noah Lavine writes:
> Unspecified-order looks exactly like `let', except that it can evaluate
> its clauses in any order before evaluating its body.
So it's exactly like `let', then? ;)
> I think we could make CSE work with this, don't you think?
Oh sure. It w
Hello,
I always thought that at some point we'd want a form that explicitly didn't
fix the order of evaluation. Maybe the for it is now. I imagine something
like this:
(foo (a (b)) (c (d))) =>
(unspecified-order ((A (let ((B (b))) (a B))
(C (let (
I really enjoy the unspecified order of evaluation that Scheme has, but
perhaps that's an implementor's perspective. So I thought that when we
went to convert to an intermediate form that names all intermediary
values like ANF or CPS, that we'd be able to preserve this; but it turn