Re: CPS and RTL

2013-01-24 Thread Noah Lavine
>> > trouble because I didn't know how to do things (like mutable variables) >> > in RTL. So I've actually ported the compiler to GLIL in a branch on my >> > computer. I also have a working Tree-IL->CPS compiler for some of >> > Tree-IL (it's

Re: CPS and RTL

2013-01-24 Thread Noah Lavine
gt; > trouble because I didn't know how to do things (like mutable variables) > > in RTL. So I've actually ported the compiler to GLIL in a branch on my > > computer. I also have a working Tree-IL->CPS compiler for some of > > Tree-IL (it's not done yet). > &g

Re: CPS and RTL

2013-01-24 Thread Andy Wingo
TL. So I've actually ported the compiler to GLIL in a branch on my > computer. I also have a working Tree-IL->CPS compiler for some of > Tree-IL (it's not done yet). > > I thought that might be a better way forward because CPS and RTL are, to > a certain extent, separate idea

Re: CPS and RTL

2013-01-24 Thread Noah Lavine
n a branch on my computer. I also have a working Tree-IL->CPS compiler for some of Tree-IL (it's not done yet). I thought that might be a better way forward because CPS and RTL are, to a certain extent, separate ideas. I'll push my wip-cps branch, which contains a Tree-IL->CPS comp

Re: CPS and RTL

2013-01-24 Thread Andy Wingo
On Thu 24 Jan 2013 11:38, Nala Ginrut writes: > Are you guys going to use CSP to implement SSA for AOT? Too many acronyms! I think the answer in short is that we are interested in using a continuation-passing style intermediate language. We don't know if it will work well or not, but we will tr

Re: CPS and RTL

2013-01-24 Thread Nala Ginrut
Are you guys going to use CSP to implement SSA for AOT? 在 2013-1-24 PM6:36,"Andy Wingo" 写道: > Hi! > > On Thu 24 Jan 2013 10:28, Mark H Weaver writes: > > > The problem is that CPS fixes the order in which everything is > > evaluated, such as the order in which procedure arguments are > > evaluate

Re: CPS and RTL

2013-01-24 Thread Andy Wingo
Hi! On Thu 24 Jan 2013 10:28, Mark H Weaver writes: > The problem is that CPS fixes the order in which everything is > evaluated, such as the order in which procedure arguments are > evaluated, the order in which 'let' or 'letrec' initializers are > evaluated, etc. The fact that these orders ar

Re: CPS and RTL

2013-01-24 Thread Mark H Weaver
Andy Wingo writes: > * We should still compile Scheme to tree-il I think; it's convenient, > and other languages may well prefer a more direct-style IL as a > target. I like CPS for later passes of the compiler, but it should not come first. The problem is that CPS fixes the order in w

Re: CPS and RTL

2013-01-24 Thread Andy Wingo
Hi Noah, On Sat 17 Nov 2012 16:35, Noah Lavine writes: > I've had several conversations on this list about using > continuation-passing style in Guile. I recently decided to take the hint > and implement it. I've pushed a new branch called wip-rtl-cps that I'd > appreciate comments on (but I do

Re: CPS and RTL

2012-11-17 Thread Stefan Israelsson Tampe
Hi Noha, very clean code indeed, nice work, (mine rtl compiler is much more a bit of a hack btw :-)) One thing to think about from the beginning is how to protect variables from gc and at the same time offer unreachable vars to be gc:d at an early state. In guile-2.0 we kept using a stack for e.g

CPS and RTL

2012-11-17 Thread Noah Lavine
Hello, I've had several conversations on this list about using continuation-passing style in Guile. I recently decided to take the hint and implement it. I've pushed a new branch called wip-rtl-cps that I'd appreciate comments on (but I do not necessarily think that this is the branch that will be