My research focuses on language design — specifically, in the intersection of module systems and type systems witnessed by functional programming languages. I'm interested in (dependent) type theory, constructive logic, proof engineering, and, generally, principled approaches to practical problems.
Currently I am designing a module language for Haskell, along with my advisor Derek Dreyer and Simon Peyton Jones and Simon Marlow from Microsoft Research. Yes, a real module language, for Haskell. Specifically, it's a total redesign of the current package system, and the notion of signature is of key import (as with ML modules). It's based on Dreyer and Rossberg's formulation of mixin modules, MixML.
- Type Checking Modular Multiple Dispatch with Parametric Polymorphism and Multiple Inheritance. Eric Allen, Justin Hilburn, Scott Kilpatrick, Victor Luchangco, Sukyoung Ryu, David Chase, and Guy L. Steele Jr. OOPSLA 2011. (pdf, abstract)
- Ad Hoc: Overloading and Language Design. Scott Kilpatrick. Master's thesis, University of Texas at Austin, 2010. (pdf, abstract)