20/10/2004 Meeting

The 90 Minute Scheme to C compiler - Marc Feeley

Marc Feeley gave us another really good presentation. It was more technical than the previous ones, but it was definitely worth it. (I think this may set the tone for future presentations... we'll see!)

Marc showed us how to write a simple Scheme to C compiler, in Scheme. In only 90 minutes! And although not supporting the whole Scheme standard, the compiler supports fully optimized proper tail calls, continuations, and (of course) full closures. The compiler is implemented using two important compilation techniques for functional languages: closure conversion and CPS-conversion.

The presentation is available in PDF format. The source code of the whole compiler is available here, as well as a few test programs: test1.scm, test2.scm, and test3.scm.

Also, there are AVIs for the whole presentation: Part 1 and Part 2. Note: These files are pretty big (more than 200Mb each).