Xoc, an Extension-Oriented Compiler
Russ Cox, Tom Bergan, Austin Clements, Frans Kaashoek, and Eddie Kohler
xoc@pdos.csail.mit.edu

Xoc is described in the paper “Xoc, an extension-oriented compiler,” ASPLOS 2008.

Austin Clements's master's thesis, “A Comparison of Designs for Extensible and Extension-Oriented Compilers,” provides a more detailed comparison of related work than the ASPLOS paper.

Russ Cox's Ph.D. thesis, “An Extension-Oriented Compiler”, gives more details about the entire system, as well as a definition of the zeta language.

Xoc is implemented in a custom scripting language called zeta. The ASPLOS paper describes and gives the rationale for zeta.

The xoc prototype is available for download. This version of zeta differs in small ways but mostly matches the version described in the paper. The most obvious one is that the zeta interpreter is now implemented in C++ instead of C. It is known to build and run successfully on Ubuntu Linux 7.10.

A newer unstable xoc is also available for download. This version mostly corresponds to the version described in the Ph.D. thesis.