
Room A06
Computer Science
University of Nottingham
Jubilee Campus
Wollaton Road
Nottingham
NG8 1BB
email: pwmASPERANDcsSTOPnottSTOPacSTOPuk
My interests lie in dependently typed programming and type theory as well as functional programming as a whole. I recently completed my PhD on constructing universes for generic programming. I am an active developer of the Epigram dependently typed functional programming language, we hope to integrate a generic programming system into the next version, supporting generics from the ground up. On Fridays I like to lunch.
My thesis, which revisits all of the work from the papers below, spelled out with more detail. The second chapter also serves as a nice introduction to the Epigram system. (pdf)
International Journal of Foundations of Computer Science - Volume 20
A slightly different presentation of the first half of Constructing Strictly Positive Families with more detail on generic programming. (pdf)
Theory of Computing 2007 - ISBN:1-920-68246-5
Revisiting earlier work we consider a telescopic universe for strictly positive types and extend the scope of the techniques to include strictly positive families. Some generic programs defined for families include equality, modalities, map and find. We also consider a translation to Indexed Containers. (pdf)
Types for Proofs and Programs (TYPES 2004) - ISBN:3-540-31428-8
In this paper we use the Epigram language to define the universe of regular tree types---closed under empty, unit, sum, product and least fixpoint. We then present a generic decision procedure for Epigram's in-built equality at each type. We also give a generic definition of map, taking our inspiration from PolyP. Finally, we equip the regular universe with the partial derivative which can be interpreted functionally as Huet's notion of `zipper', as suggested by McBride and implemented (without the fixpoint case) in Generic Haskell. We aim to show through these examples that generic programming can be ordinary programming in a dependently typed language. (pdf)