[Best viewed with any browser]

Idris

A language with dependent types

Introduction | Examples | Documentation | Download

Introduction

Idris is an experimental language with full dependent types. Dependent types allow types to be predicated on values, meaning that some aspects of a program's behaviour can be specified precisely in the type. The language is closely related to Epigram and Agda. There is now a tutorial developing.

The aims of the project are:

Examples

See darcs repository. You can also look there for library code. Some particular things worth looking at are:

Documentation

The most comprehensive documentation at the moment is the tutorial. Downloading and installing, and running a first program is described here.

Download

You can download the source from the following places:

Requires GHC version 6.10 or greater to build; earlier versions should work but will need some fiddling.

You'll also need Ivor the Proof Engine. I will at some point make a release that collects all the non-standard stuff you need into one tarball.


Edwin Brady -- eb@dcs.st-and.ac.uk -- 29th November 2009