Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

Epigram Reloaded: A Standalone Typechecker for ETT

Summary: Chapter 1
Epigram Reloaded:
A Standalone Typechecker for ETT
James Chapman1, Thorsten Altenkirch1, Conor McBride1
Abstract Epigram, a functional programming environment with dependent types,
interacts with the programmer via an extensible high level language of program-
ming constructs which elaborates incrementally into Epigram's Type Theory,
ETT, a rather spartan -calculus with dependent types, playing the r^ole of a `core
language'. We implement a standalone typechecker for ETT in Haskell, allowing
us to reload existing libraries into the system safely without re-elaboration.
Rather than adopting a rewriting approach to computation, we use a glued
representation of values, pairing first-order syntax with a functional representation
of its semantics, computed lazily. This approach separates -reduction from -
conversion. We consequently can not only allow the -laws for -abstractions and
pairs, but also collapse each of the unit and empty types.
Epigram2 [21, 4] is at the same time a functional programming language with
dependent types and a type-driven, interactive program development system. Its
type system is strong enough to express a wide range of program properties, from
basic structural invariants to full specifications. Types assist interactive program-


Source: Altenkirch, Thorsten - School of Computer Science, University of Nottingham


Collections: Computer Technologies and Information Sciences