My research focuses on directly applying formalism to practical problems, scaling PL techniques up to work on real systems. My primary focus is on improving the the POSIX shell and building tools to support its use, but I also work in a variety of other areas: contracts and gradual types; tools for directly expressing PL formalism, using logic programming and SMT solving; and foundational semantics for decidable languages, like Kleene algebra with tests.

Before applying for this opportunity you need to submit your online profile. Click the button below to continue.