Check out the new USENIX Web site.

Home About USENIX Events Membership Publications Students
Conference on Domain-Specific Languages, 1997

Incorporating Application Semantics and Control into Compilation

Dawson R. Engler
M.I.T. Laboratory for Computer Science


Programmers have traditionally been passive users of compilers, rather than active exploiters of their transformational abilities. This paper presents Magik, a system that allows programmers to easily and modularly incorporate application-specific extensions into the compilation process.

The Magik system gives programmers two significant capabilities. First, it provides mechanisms that implementors can use to incorporate application semantics into compilation, thereby enabling both optimizations and semantic checking impossible by other means. Second, since extensions are invoked during the translation from source to machine code, code transformations (such as software fault isolation [14]) can be performed with full access to the symbol and data flow information available to the compiler proper, allowing them both to exploit source semantics and to have their transformations (automatically) optimized as any other code.

  • View the full text of this paper in PDF form.

  • If you need the latest Adobe Acrobat Reader, you can download it from Adobe's site.

  • To become a USENIX Member, please see our Membership Information.

?Need help? Use our Contacts page.

Last changed: 15 April 2002 aw
Technical Program
Conference Index