I am a postdoctoral researcher at McGill University and a Debian Developer. I completed my PhD in computer science at Carnegie Mellon University, where I was advised by Steve Brookes and Frank Pfenning. My professional ambition is to develop tools and techniques that help practitioners correctly specify, implement, and reason about concurrent and communicating systems. My current work involves designing and reasoning about dependently session-typed languages.
See my blog for my musings on computer science and mathematics. A version of this site is also available over Gopher.