I work toward making the construction of reusable, trusted software components possible and effective. My research has spanned program analysis; semantics; verification and model-checking; security; logic; complexity; and algorithms.
Together with Mike Hicks and Leo Lampropoulos, I direct the laboratory for Programming Languages at the University of Maryland (PLUM). Previously, I’ve worked with the Programming Research Laboratory (PRL) at Northeastern University.
I currently serve as the faculty advisor to Technica, the largest hackathon for
underrepresented genders in the world, and as an Advisory Board member for the SIGPLAN Long-Term Mentoring Committee (SIGPLAN-M), an international long-term mentoring program for programming languages researchers.
I co-authored the book Realm of Racket with Matthias Felleisen and undergraduates from Northeastern University, which introduces programming interactive video games.
- New paper: A Formal Model of Checked C to appear at CSF'22.
- I'm serving on the PLDI 2022 Program Committee.
- I'm serving on the Advisory Board of the SIGPLAN Long-Term Mentoring Committee (SIGPLAN-M).
- New paper: RbSyn: Type- and Effect-Guided Program Synthesis to appear at PLDI'21.
- New paper: Corpse Reviver: Sound and Efficient Gradual Typing via Contract Verification to appear at POPL'21.
- Abstracting Abstract Machines, which appeared at ICFP 2010, has won The ICFP Most Influential Paper award at ICFP 2020.
- I'm speaking at The Programming Languages Mentoring Workshop @ ICFP 2020.
- I'm lecturing at The Cornell, Maryland, Max Planck Pre-doctoral Research School 2020.
- I'm serving as a faculty advisor to Technica, the world's largest all-women and non-binary hackathon.
- New paper: Size-Change Termination as a Contract to appear at PLDI'19.
- New paper: Type-Level Computations for Ruby Libraries to appear at PLDI'19.
- I received a 2019 NSF CAREER Award for Gradual Verification: From Scripting to Proving.
- Gradual Liquid Type Inference won a Distinguished Paper award at OOPSLA 2018!
- I'm teaching a new Terps Young Scholar course in Summer 2019: Make Your Own Video Games: An Introduction to Programming and Computing.
- I'm co-organizing PLMW @ ICFP, the Programming Languages Mentoring Workshop, co-located with ICFP 2019 in Berlin, Germany.
- I'm serving on the OOPSLA 2019 Review Committee.
- New paper: Gradual Liquid Type Inference to appear at OOPSLA'18 in Boston.
- New paper: Theorem Proving for All to appear at Haskell 2018 in St. Louis, MO.
- I served on the thesis committee Quentin Stiévenart's dissertation, Scalable Designs for Abstract Interpretation of Concurrent Programs: Application to Actors and Shared-Memory Multi-Threading.
- I'm co-organizing PLMW @ ICFP, the Programming Languages Mentoring Workshop, co-located with ICFP 2018 in St. Louis, MO.
- I'm serving on the Selection Committee for the Student Research Competition at both PLDI and ICFP 2018.
- My post-doc, Thomas Gilray, will be joining the faculty of the Computer Science department at the University of Alabama at Birmingham.
- New paper: Soft Contract Verification for Higher-order Stateful Programs published at POPL'18 in Los Angeles, USA.