Survivable Distributed Systems
Cross Cutting Thrusts
Formal Methods, Next Generation Threat Prediction and Response, Software Security
Jonathan Aldrich is an Associate Professor of the School of Computer Science. He does programming languages and software engineering research focused on developing better ways of expressing and enforcing software design within source code, typically through language design and type systems. He has contributed to object-oriented typestate verification, modular reasoning techniques for aspects and stateful programs, and new object-oriented language models. For his work specifying and verifying architecture, he received a 2006 NSF CAREER award and the 2007 Dahl-Nygaard Junior Prize (press release, article).
His homepage can be found at http://www.cs.cmu.edu/~aldrich/.
Ph.D.,Computer Science and Engineering, University of Washington, August 2003.
Advisors: Craig Chambers and David Notkin.
Thesis: Using Types to Enforce Architectural Design
M.S., Computer Science and Engineering, University of Washington, June 1999.
B.S., Engineering and Applied Science (Computer Science), California Institute of Technology, June 1997.
Cross Cutting Thrusts: Software Security | Next Generation Threat Prediction and Response | Formal Methods
Researchers: William Scherlis, Jonathan AldrichResearch Area: Survivable Distributed Systems
Cross Cutting Thrusts: Software Security | Formal Methods
Researchers: William Scherlis, Jonathan AldrichCross Cutting Thrusts: Software Security
Researchers: Jonathan Aldrich, William ScherlisResearchers: James Herbsleb, Jonathan Aldrich
"A Theory of Tagged Objects". Joseph Lee, Jonathan Aldrich, Troy Shaw, and Alex Potanin. Proc. European Conference on Object-Oriented Programming (ECOOP), 2015
"Searching the State Space: A Qualitative Study of API Protocol Usability". Joshua Sunshine, James Herbsleb and Jonathan Aldrich. Proc. International Conference on Program Comprehension (ICPC), 2015.
"Foundations of Typestate-Oriented Programming". Ronald Garcia, Éic Tanter, Roger Wolff, and Jonathan Aldrich. Transactions on Programming Languages and Systems 36(4) article 12, 2014.
"Statically Typed String Sanitation Inside a Python". Nathan Fulton, Cyrus Omar, and Jonathan Aldrich. Proc. Privacy and Security in Programming (PSP), 2014
"Language-Based Architectural Control". Jonathan Aldrich, Cyrus Omar, Alex Potanin, and Du Li. In International Workshop on Aliasing, Capabilities, and Ownership (IWACO '14), 2014
"A Type System for Borrowing Permissions".
Karl Naden, Robert Bocchino, Kevin Bierhoff, Jonathan Aldrich. To appear in Proceedings of Principles of Programming Languages (POPL '12), 2012.
"An Empirical Study of Object Protocols in the Wild".
Nels E. Beckman, Duri Kim, and Jonathan Aldrich. To appear in Proceedings of the European Conference on Object-Oriented Pro
"First-Class State Change in Plaid".
Joshua Sunshine, Karl Naden, Sven Stork, Jonathan Aldrich, and Éric Tanter. To appear in Proceedings of Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA '11), 2011.
Roger Wolff, Ronald Garcia, Éric Tanter, and Jonathan Aldrich. To appear in Proceedings of the European Conference on Object-Oriented Programming (ECOOP '11), 2011.
"Permission-Based Programming Languages (NIER Track)".
Jonathan Aldrich, Ronald Garcia, Mark Hahnenberg, Manuel Mohr, Karl Naden, Darpan Saini, Sven Stork, Joshua Sunshine, Éric Tanter, and Roger Wolff. In Proceedings of the International Conference on Software Engineering (ICSE '11), New Ideas and Emerging Results Track, 2011. gramming (ECOOP '11), 2011.