Home

About

Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network
FAQHELPSITE MAPCONTACT US


  Advanced Search  

 
Generic Programming with Dependent Types Thorsten Altenkirch, Conor McBride and Peter Morris
 

Summary: Generic Programming with Dependent Types
Thorsten Altenkirch, Conor McBride and Peter Morris
School of Computer Science and Information Technology
University of Nottingham
1 Introduction
In these lecture notes we give an overview of recent research on the relationship
and interaction between two novel ideas in (functional) programming:
Generic programming Generic programming [15, 21] allows programmers to
explain how a single algorithm can be instantiated for a variety of datatypes,
by computation over each datatype's structure.
Dependent types Dependent types [28, 37] are types containing data which
enable the programmer to express properties of data concisely, covering the
whole spectrum from conventional uses of types to types-as-specifications
and programs-as-proofs.
Our central thesis can be summarized by saying that dependent types provide
a convenient basis for generic programming by using universes. A universe is
basically a type U : which contains names for types and a dependent type, or
family, El : U which assigns to every name a : U the type of its elements
El a : --we call this the extension of the name a. Historically, universes have
been already used by Type Theory to capture the predicative hierarchy of types,

  

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

 

Collections: Computer Technologies and Information Sciences