Research position in type systems, programming languages, compilers, or verification.
Ph.D. candidate, Computer Science. Advisor: Andrew Appel
M.A., Computer Science, November 2002
B.A., cum laude, Computer Science, June 2000. GPA 3.71
Research Assistant. Developing Foundational Proof-Carrying Code, a system for generating and verifying safety proofs for machine-code programs. Developing models and proofs in machine-checked formal logic. Improving type system for machine code. Extending system to CISC/VLIW architectures.
Summer Manager. Planned and executed upgrade of software package for finite-state linguistic analysis.
Researcher. Researched open problems in text normalization at National Science Foundation internship. Advanced state of the art with six others (see Publications). Investigated subproblem using regular expression-based and weighted finite-state automaton-based techniques.
The New Jersey voting-machine lawsuit and the AVC Advantage DRE voting machine. Andrew W. Appel, Maia Ginsburg, Harri Hursti, Brian W. Kernighan, Christopher D. Richards, Gang Tan, and Penny Venetis. In EVT/WOTE ’09: Proceedings of the 2009 USENIX/Accurate/IAVoSS Electronic Voting Technology Workshop / Workshop on Trustworthy Elections, August 2009.
Semantic foundations for typed assembly languages. Amal Ahmed, Andrew W. Appel, Christopher D. Richards, Gang Tan, and Daniel C. Wang. ACM Transactions on Programming Languages and Systems (TOPLAS), to appear.
A very modal model of a modern, major, general type system. Andrew W. Appel, Paul-André Melliès, Christopher D. Richards, and Jérôme Vouillon. In POPL ’07: Proceedings of the 34th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, January 2007.
Normalization of non-standard words. R. Sproat, A. Black, S. Chen, S. Kumar, M. Ostendorf, and C. Richards. Computer Speech & Language, 15(3):287–333, July 2001.
Insecurities and inaccuracies of the Sequoia AVC Advantage 9.00H DRE voting machine. Andrew W. Appel, Maia Ginsburg, Harri Hursti, Brian W. Kernighan, Christopher D. Richards, and Gang Tan. Redacted version of expert report submitted in Gusciora v. Corzine, September 2008.
Languages: ML, Twelf, Java, C/C++, Perl, Lisp, LaTeX.
Platforms: BSD/Linux/UNIX, Windows, Macintosh.