Research interests

It is too hard to build trustworthy software systems using conventional systems APIs. I work on higher-level, language-based abstractions for programming that better address important cross-cutting concerns: security, extensibility, persistence, distribution.

Selected recent publications

Pattern matching can coexist with data abstraction and subtyping, checking exhaustiveness and redundancy.

Program analysis and synthesis enable seamlessly moving data and functionality between app and database servers.

For consistently good performance, Pyxis automatically migrates computation between the app and database server.

A new architecture for secure mobile code, supporting secure use, publication, and sharing of code across trust domains.

A non-restrictive type system in which programs provably leak only a bounded amount of information through timing.

Awards

Current Projects

[Show courses taught]