Agda is a dependently typed functional programming language. It has inductive families, i.e., data types which depend on values, such as the type of vectors of a given length. It also has parametrised modules, mixfix operators, Unicode characters, and an interactive Emacs interface which can assist the programmer in writing the program.
Agda is a proof assistant. It is an interactive system for writing and checking proofs. Agda is based on intuitionistic type theory, a foundational system for constructive mathematics developed by the Swedish logician Per Martin-Löf. It has many similarities with other proof assistants based on dependent types, such as Coq, Epigram, Matita and NuPRL.
Agda is open-source and enjoys contributions from many authors. The center of the Agda development is the Programming Logic group at Chalmers and Gothenburg University. The main developers are Ulf Norell, Nils Anders Danielsson, and Andreas Abel.
Agda users and implementors meet biannually for a week of talks and code sprints.
- (2019-11-11) The standard library 1.2 is now available.
- (2019-06-29) The standard library 1.1 is now available.
- (2019-05-17) Agda 18.104.22.168 is now available.
- (2019-04-23) The standard library 1.0.1 is now available.
- (2019-04-12) The standard library 1.0 is now available.
- (2019-04-12) Agda 2.6.0 is now available.
- (2018-10-29) Agda 22.214.171.124 is now available.
- (2018-10-20) The standard library 0.17 is now available.
- (2018-08-17) The standard library 0.16.1 is now available.
- (2018-07-19) Agda 126.96.36.199 is now available.
- (2018-06-08) The standard library 0.16 is now available.
- (2018-06-02) Agda 2.5.4 is now available.
- Language tutorials.
- Installation and use.
- Community: mailing list and IRC channel. Don't hesitate to ask questions!
Documentation and examples
- Manuals and howtos.
- Standard library, and other libraries and developments (all Agda users are strongly encouraged to add their own developments to make them available to the community).