[Colloq] PhD Thesis Defense: Ryan Culpepper, Monday, March 15
Rachel Kalweit
rachelb at ccs.neu.edu
Mon Mar 8 15:24:42 EST 2010
The College of Computer and Information Science Presents:
PhD Thesis Defense by:
Ryan Culpepper
Date: Monday, March 15, 2010
Time: 10:00am
Location: 366 West Village H
Title:
Taming Macros
Abstract:
Over the past two decades, Scheme macros have evolved into a
powerful API for the compiler front-end. Like Lisp macros, their
predecessors, Scheme macros expand source programs into a small core
language; unlike Lisp systems, Scheme macro expanders preserve
lexical scoping, and advanced Scheme macro systems handle other
important properties such as source location. Using such macros,
Scheme programmers now routinely develop the ultimate abstraction:
embedded domain-specific programming languages.
Unfortunately, a typical Scheme programming environment provides
little support for macro development. The tools for understanding
macro expansion are poor, which makes it difficult for experienced
programmers to debug their macros and for novices to study the
behavior of macros. At the same time, the language for specifying
macros is limited in expressive power, and it fails to validate
syntactic correctness of macro uses.
This dissertation presents tools for macro development that
specifically address these two needs. The first is a stepping debugger
specialized to the pragmatics of hygienic macros. The second is a
system for writing macros and specifying syntax that automatically
validates macro uses and reports syntax errors.
Committee:
Matthias Felleisen
Mitch Wand
Olin Shivers
Matthew Flatt (University of Utah)
More information about the Colloq
mailing list