Skip to main content

Typing Template Haskell: Soft Types

Ian Lynagh

Abstract

In this paper we give the motivation for an improved type system for Template Haskell, a recent compile-time meta-programming extension for Haskell, and explain what properties we would like the type system to have and why. We then present a type system, based on soft types, for a simplified Template Haskell-like language that has these properties. We prove that it has principal types and describe an algorithm that implements type inference for this type system.

Institution
Oxford University Computing Laboratory
Month
October
Number
RR−04−19
Year
2004