[Colloq] PhD Thesis Proposal by David Fisher, Thursday, Aug. 9

Rachel Kalweit rachelb at ccs.neu.edu
Fri Aug 3 10:04:49 EDT 2007


College of Computer and Information Science
presents
PhD Thesis Proposal by:
David Fisher
Proposal Title:
Ziggurat: Adding Static Semantics to Macros

Thursday, August 9, 2007
2:00pm
366 West Village H

Abstract
Building custom notations is an essential step in the design process.  Although an electrical engineer could write an English description of a circuit board, explaining which components were used and how each was connected, it is not very effective for him to do so; he would do much better to draw a circuit diagram. This not only streamlines the process of circuit architecture, allowing commonly-used design idioms to be expressed concisely, but it also allows a reasoning engine, such as an automated design tool or the electrical engineer himself, to reason about the circuit, identifying redundancies and finding potential problem points. 

In programming, the custom notations we use are programming languages.  Languages can target a specific computer architecture, can be intended for general-purpose programming, or can be tailored to a particular problem domain. The reasoning power of the language is expressed as its static semantics and are of vital importance in efficient compilation and in preventing bugs. 

I have constructed a design framework that allows a language designer to: 

    * write a custom notation for a particular domain, 
    * associate rich static semantics with this notation, 
    * provide a realization of this notation by translating programs written in it into a "lower-level" language, and 
    * link the semantics of the custom notation with those of the lower-level language. 

This framework allows this by providing a macro system with two major 
features: 

    * syntax is represented as a tree of objects with classes, and 
    * methods are dispatched on these objects through a system called lazy delegation. 

The thesis of this work is: Object-oriented syntax and lazy delegation allow language designers to build custom notations with rich static semantics, and to link these semantics with those of lower-level languages.

Committee:
Olin Shivers, Associate Professor, Northeastern University (committee chair) 
Mitchell Wand, Professor, Northeastern University 
Riccardo Pucella, Associate Professor, Northeastern University 
Alan Bawden (external reader)




More information about the Colloq mailing list