Professor, Department of Computer Science, Cornell University
Software and services
Graduated PhD students
Steve Zdancewic (U. Penn)
Nathaniel Nystrom (U. Lugano)
Lantian Zheng (Google)
Stephen Chong (Harvard)
Michael Clarkson (GWU)
Xin Qi (Facebook)
Jed Liu (postdoc, Cornell)
Current research assistants
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
New security properties related to referential integrity and persistence can be soundly enforced by a type system.
Distributed transactions can be sped up by giving clients time-limited invariants on state and computation.
Diagnosing maximum-likelihood program error locations from constraint system failures.
Reconciling exhaustive pattern matching with objects (distinguished paper award, PLDI'13)
Pattern matching that verifies exhaustiveness and redundancy can coexist with data abstraction and subtyping.
StatusQuo: Making familiar abstractions perform using program analysis (best paper award, CIDR'13)
Program analysis and synthesis enable seamlessly moving data and functionality between app and database servers.
ACM Fellow, 2013
Distinguished paper award, PLDI 2013
Best paper award, CIDR 2013
Provost's Award for Distinguished Scholarship, 2010
James and Mary Tien Excellence in Teaching Award, 2010
ACM SIGPLAN Most Influential POPL Paper Award, 2009 (for POPL 1999)
Merrill Presidential Scholar Outstanding Educator Award, 2009
Best paper award, 21st ACM Symposium on Operating Systems Principles, 2007
Abraham T.C. Wong '72, Excellence in Teaching Award, 2002
NSF CAREER Award, 2002
Alfred P. Sloan Research Fellowship, 2002
Best Paper Award, 18th ACM Symposium on Operating Systems Principles, 2001
George M. Sprowls Award for outstanding Ph.D. thesis (MIT EECS Dept.)