home · mobile · calendar · colloquia · 1998-1999 · 

Colloquium - Ertl

A Fast Compiler for a Stack-Based Language
Technische Universität Wien

I will present RAFTS, a Forth compiler, focusing on aspects that are also useful in compilers for other languages. Specific needs addressed by RAFTS are: The source language relies on programmer-visible stacks (like JavaVM and PostScript), it requires very fast compilation (like e.g., Lisp, Prolog, Smalltalk, and JavaVM) to remain interactive, and the source code usually has a very high procedure call frequency (like, e.g., Lisp, Prolog, ML).

My presentation will give a tour of the compiler, pointing out some of the techniques that address these needs, e.g.: How to convert the stack-based code into data flow graphs, enabling the application of standard code generation techniques; how backwards scheduling simplifies the data structure and saves two passes; how we minimized the number of passes without sacrificing code quality; how a threaded-code intermediate representation speeds up code replication optimizations.

Hosted by Gary Nutt.

Department of Computer Science
University of Colorado Boulder
Boulder, CO 80309-0430 USA
May 5, 2012 (14:13)