Related articles |
---|
What do I need to know to write a scheme compiler? orchid.hybrid@gmail.com (orchidaceae phalaenopsis) (2015-01-29) |
Re: What do I need to know to write a scheme compiler? gneuner2@comcast.net (George Neuner) (2015-02-02) |
Re: What do I need to know to write a scheme compiler? gneuner2@comcast.net (George Neuner) (2015-02-05) |
From: | orchidaceae phalaenopsis <orchid.hybrid@gmail.com> |
Newsgroups: | comp.compilers |
Date: | Thu, 29 Jan 2015 17:24:39 +0000 |
Organization: | Compilers Central |
Keywords: | Scheme, question |
Posted-Date: | 01 Feb 2015 08:58:18 EST |
Hello comp.compilers,
My goal is to write a self hosting compiler for scheme to x86 64
assembly. I will be happy to leave call/cc out of it since I think it
complicates things. What I am focusing on is lambda and tail call
elimination.
I've tried to do it using the CPS transform but this produced code
that was far too slow to self host. I think that it introduces too
many lambdas all of which get heap allocated, I don't know how to do
analysis on the code to find out how which closures can be stack
allocated.
Could anyone give me advice on what I need to learn about implementing
closures in order to make a compiler that's efficient enough to self
host rather than just compiling tiny test programs? Should I stick
with CPS and try to do optimizations based on 0CFA (I have read about
it and it seems powerful but it looks very very difficult).
Thanks!
Return to the
comp.compilers page.
Search the
comp.compilers archives again.