Oh, and thanks a lot for reviewing the CPS stuff! I really appreciate it,
and I think it will make the end result a lot better than whatever I could
do on my own.

Noah


On Tue, Feb 19, 2013 at 9:28 AM, Noah Lavine <noah.b.lav...@gmail.com>wrote:

> Hello,
>
> Yes, I completely agree with this. I didn't do that immediately because
> I'm trying to get the infrastructure for the general case working. I plan
> to implement un-boxing in CPS. The real reason not to do it yet is that the
> tree-il-CPS compiler can't compile any examples that would actually need
> boxes. (But it will be able to soon!)
>
> Noah
>
>
> On Tue, Feb 19, 2013 at 12:53 AM, Mark H Weaver <m...@netris.org> wrote:
>
>> Hi Noah,
>>
>> "Noah Lavine" <noah.b.lav...@gmail.com> writes:
>> > commit 0d0808ae3f7390ffb250b9deb6706ad4158cce0e
>> > Author: Noah Lavine <noah.b.lav...@gmail.com>
>> > Date:   Mon Feb 18 14:10:58 2013 -0500
>> >
>> >     Make Lambda Arguments Mutable
>> >
>> >     * module/language/cps.scm: let variable objects come with an
>> >       initialization value.
>> >     * module/language/tree-il/compile-cps.scm: put all lambda arguments
>> in
>> >       variable boxes, so they are mutable.
>>
>> Lambda arguments (and all other lexical variables) should only be put
>> into boxes if they are 'set!' somewhere within their lexical scope.
>> This can always be determined at compile time.  It is crucial that we
>> minimize the number of mutable variables, since they inhibit most
>> optimizations.
>>
>> The required analysis is already implemented in tree-il/analyze.scm.
>>
>>      Regards,
>>        Mark
>>
>
>

Reply via email to