I'm a second-year Ph.D. student here at the University of Washington, studying programming languages and techniques with Dan Grossman.
I earned my undergraduate degree at Yale University, where I worked with with Paul Hudak and Zhong Shao, in particular on domain-specific languages and their properties. My current research interests cover most of the programming pipeline, from designing more expressive languages, through improving the compilers, to certifiably proving code correct. The overarching goal is to make it easier to write programs correctly the first time, and to improve confidence in the resulting products.
Research interests and papers
- Pure-Causal Atomicity: The goal of atomicity analyses is to verify that certain sections of code appear to execute atomically to all other threads. This project extends recent work on causal atomicity (a model-checking approach to verify atomicity using Petri nets) with abstract atomicity (a type-theoretic approach using purity to validate mode code patterns as atomic).
- SEMINAL: I’m working with Dan Grossman to improve the quality of error messages given by compilers. In practice, these messages are often precise but cryptic, and generating them often complicates the compilers themselves (potentially introducing bugs). This project aims to separate the two aspects of error finding and reporting, and in the process make the compilers both simpler and more informative.
- Yampa: As my senior project at Yale, I worked on proving algebraic properties of the embedding of Yampa in Haskell.
More information can be found on the following page.
Classes and activities
Spring 2008:
Contact
- Email (essential):
- (first initial + last name) {at} cs.washington.edu
- Location (likely):
- Paul G. Allen Center, Office 378
- Post (possible):
- UW CSE Box 352350, Seattle, WA 98195-2350


