Current Projects:
Frenetic:
A network programming language
Forest: Language support for managing file
system fragments
Yarra:
Defense against non-control data attacks
PADS:
Processing ad hoc data sources
Older Projects:
Zap:
producing reliable software in the presence of transient faults
Polymer:
compositional program monitoring
AspectML:
a functional aspect-oriented programming language
Plato:
logical reasoning about programs
TAL: typed assembly language
Courses
COS 441: Programming Languages (Fall 05,
Fall 07,
Fall 08, Fall 11)
COS 597C: Parallelism (Fall
10, with David August)
COS Independent Work (Fall 07-
Spring 09)
COS 226: Introduction to
Algorithms and Data Structures (Spring
07,
Spring 11)
COS 320: Compiling Techniques (Spring 03,
Spring 04,
Spring 05,
Spring 06)
COS 597B: Computer Security Foundations (Fall 04)
COS 510: Programming Languages (Fall 02,
Fall
03)
COS 598E: Foundations of Language-Based Security (Spring 02).
TACL Seminar:
Princeton's research seminar on programming languages and compiler
technology
General Academic Service
Microsoft Think Tank on University Relations.
2009.
Core member, CCC Visioning Study on Multi-level Approaches to Reliability.
2008-2010.
Associate Editor for ACM TOPLAS. June 2007-.
ACM POPL Publicity Chair. POPL 03-POPL 06.
Program Committees & Summer Schools
[2012] POPL 12 (ERC), PODS
12 (ERC), OBT 12 (Program Chair)
[2011] ESOP 11
[2010] PLDI 10
[2009] OOPSLA 09
[2008] IBM/NJPLS PL Day
[2007]
POPL 07,
CGO 07,
FOOL/WOOD 07,
TFP 07,
PLAS 07.
[2006] SPACE 06 (Program Co-Chair),
ICALP 06,
FOAL 06,
Summer School on Language-Based Techniques for Concurrent and Distributed
Software (Steering Committee).
[2005]
FOAL
05 (Program Chair),
TLDI 05,
NJPLS
(Program Chair),
Summer School on Reliable Computing
(Organizer).
[2004]
ICFP 04,
LRRP 04,
FOAL
04,
NJPLS (Host),
Summer School on Software Security
(Organizer).
[2003]
NJPLS (Host),
Summer
School on
Foundations of Security (Invited speaker).
[2002]
PEPM
02,
NJPLS
(Program Chair), Summer School on Foundations
of Internet Security. (Invited speaker).
Awards
ACM
SIGPLAN Research Highlight. Selected in September 2008 for POPL
2006 paper entitled "The Next 700 Data Description Languages." (1 of 5
papers initially selected from 2006-2008).
Official nomination.
ACM
SIGPLAN Research Highlight. Selected in September 2008 for PLDI
2007 paper on entitled "Fault-tolerant Typed Assembly Language." (1 of
5 papers initially selected from 2006-2008).
Official nomination.
Most
Influential 1998 POPL Paper Award. (pdf)
Awarded after 10 years consideration at POPL 2008. Also see our journal
paper on this topic (pdf).
PLDI 2007 Best Paper Award
(pdf). June 2007.
Emerson Junior Faculty Award for Excellence in Research and Teaching.
May 2005.
Alfred P. Sloan Fellow. Sept 2004-Sept 2006.
NSF Career Award. July 2003.
Awards Won by My Students
Accenture
Award. Won by Zach DeVito, an undergraduate advisee. Dec.
2007.
Accenture
Award. Won by Lester Mackey, an undergraduate advisee. Dec.
2007.
CRA
Outstanding Undergraduate Award. Won by Lester Mackey, an undergraduate
advisee. May 2007.
Pyne
Prize. Won by Lester Mackey, an undergraduate
advisee. May 2007.
Princeton Computer Science Department Senior Thesis
Award.
Co-winner Mark Daly, an undergraduate advisee. May 2006.
Princeton Computer Science Department Senior Thesis
Award.
Co-winner Rob Simmons, an undergraduate advisee. May 2005.