[Colloq] David Fisher, PhD Thesis Defense

Rachel Kalweit rachelb at ccs.neu.edu
Fri Apr 16 09:25:17 EDT 2010


The College of Computer and Information Science presents:

DISSERTATION TITLE: Static Semantics for Syntax Objects

ABSTRACT:
Designing custom notations is essential to designing advanced systems. 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, determine its behavior and find 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 pre-testing 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:
 * design 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 static semantics of the custom notation with those of  the lower-level language.

The 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:
  Prof. Olin Shivers (chair)
  Prof. Mitchell Wand
  Prof. Riccardo Pucella
  Dr. Alan Bawden (external member)

LOCATION: WVH 366

TIME & DATE: April 22, 2:00 pm




More information about the Colloq mailing list