Programming Research Group Research Report RR-04-19

Typing Template Haskell: Soft Types

Ian Lynagh

October 2004, 22pp.

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.


This paper is available as a 323,486 bytes ps file.