Charlie~ On Thu, Dec 17, 2009 at 4:34 PM, Charles Oliver Nutter <[email protected]>wrote:
> On Thu, Dec 17, 2009 at 2:49 PM, Matt Fowles <[email protected]> > wrote: > > John~ > > I am confused... The fact that I don't use Janino's parser doesn't > > theoretically stop me from bootstrapping the compiler. In fact, Janino's > > parser is only useful if the language I am compiling is actually Java. > If > > my language goes > > Foo -> Foo AST -> Janino AST -> bytecode > > I can still get a bootstrapped system in the usual way (implement a Foo > > compiler in Java, use that to implement a Foo compiler in Foo, throw away > > the Java one and compile using earlier versions of the compiler). > > Matt > > This is what I hope to do, in terms of Ruby -> Ruby IR (CFG) -> Janino > AST -> bytecode. To be honest, I would also appreciate things like > register (local var) allocation, but for debugging sanity we'll > probably have to hand-select local variables anway. I agree that variable minimalization could definitely be useful long term, but my understanding is that it is an expensive optimization to compute. One other nice benefit of this is that (for debugging), you can go Ruby -> Ruby IR (CFG) -> Janino AST -> Java src We make heavy use of struct types, so a lot of primitive operations expand to several statements and it makes the debug cycle faster for initial development if you can see the code you are genning. Matt > - Charlie > > -- > > You received this message because you are subscribed to the Google Groups > "JVM Languages" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]<jvm-languages%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/jvm-languages?hl=en. > > > -- You received this message because you are subscribed to the Google Groups "JVM Languages" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/jvm-languages?hl=en.
