Agda: A dependently typed functional programming language and proof assistant
Agda is a dependently typed functional programming language: It has inductive families, which are similar to Haskell's GADTs, but they can be indexed by values and not just types. It also has parameterised modules, mixfix operators, Unicode characters, and an interactive Emacs interface (the type checker can assist in the development of your code).
Agda is also 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 and NuPRL.
This package includes both a command-line program (agda) and an
Emacs mode. If you want to use the Emacs mode you can set it up by
running agda-mode setup
(see the README).
Note that the Agda library does not follow the package versioning policy, because it is not intended to be used by third-party packages.
[Skip to Readme]
Modules
[Index]
- Agda
- Auto
- Compiler
- Agda.Compiler.CallCompiler
- Epic
- Agda.Compiler.Epic.AuxAST
- Agda.Compiler.Epic.CaseOpts
- Agda.Compiler.Epic.CompileState
- Agda.Compiler.Epic.Compiler
- Agda.Compiler.Epic.Epic
- Agda.Compiler.Epic.Erasure
- Agda.Compiler.Epic.ForceConstrs
- Agda.Compiler.Epic.Forcing
- Agda.Compiler.Epic.FromAgda
- Agda.Compiler.Epic.Injection
- Agda.Compiler.Epic.Interface
- Agda.Compiler.Epic.NatDetection
- Agda.Compiler.Epic.Primitive
- Agda.Compiler.Epic.Smashing
- Agda.Compiler.Epic.Static
- Agda.Compiler.HaskellTypes
- JS
- MAlonzo
- Agda.ImpossibleTest
- Interaction
- Agda.Interaction.BasicOps
- CommandLine
- Agda.Interaction.EmacsCommand
- Agda.Interaction.EmacsTop
- Agda.Interaction.Exceptions
- Agda.Interaction.FindFile
- Highlighting
- Agda.Interaction.Imports
- Agda.Interaction.InteractionTop
- Agda.Interaction.MakeCase
- Agda.Interaction.Monad
- Agda.Interaction.Options
- Agda.Interaction.Response
- Agda.Main
- Syntax
- Termination
- Agda.Tests
- Agda.TheTypeChecker
- TypeChecking
- Agda.TypeChecking.Abstract
- Agda.TypeChecking.CheckInternal
- Agda.TypeChecking.CompiledClause
- Agda.TypeChecking.Constraints
- Agda.TypeChecking.Conversion
- Agda.TypeChecking.Coverage
- Agda.TypeChecking.Datatypes
- Agda.TypeChecking.DisplayForm
- Agda.TypeChecking.DropArgs
- Agda.TypeChecking.Empty
- Agda.TypeChecking.Errors
- Agda.TypeChecking.EtaContract
- Agda.TypeChecking.Forcing
- Agda.TypeChecking.Free
- Agda.TypeChecking.Implicit
- Agda.TypeChecking.Injectivity
- Agda.TypeChecking.InstanceArguments
- Agda.TypeChecking.Irrelevance
- Agda.TypeChecking.Level
- Agda.TypeChecking.LevelConstraints
- Agda.TypeChecking.MetaVars
- Agda.TypeChecking.Monad
- Agda.TypeChecking.Monad.Base
- Agda.TypeChecking.Monad.Benchmark
- Agda.TypeChecking.Monad.Builtin
- Agda.TypeChecking.Monad.Closure
- Agda.TypeChecking.Monad.Constraints
- Agda.TypeChecking.Monad.Context
- Agda.TypeChecking.Monad.Debug
- Agda.TypeChecking.Monad.Env
- Agda.TypeChecking.Monad.Exception
- Agda.TypeChecking.Monad.Imports
- Agda.TypeChecking.Monad.MetaVars
- Agda.TypeChecking.Monad.Mutual
- Agda.TypeChecking.Monad.Open
- Agda.TypeChecking.Monad.Options
- Agda.TypeChecking.Monad.Sharing
- Agda.TypeChecking.Monad.Signature
- Agda.TypeChecking.Monad.SizedTypes
- Agda.TypeChecking.Monad.State
- Agda.TypeChecking.Monad.Statistics
- Agda.TypeChecking.Monad.Trace
- Patterns
- Agda.TypeChecking.Polarity
- Agda.TypeChecking.Positivity
- Agda.TypeChecking.Pretty
- Agda.TypeChecking.Primitive
- Agda.TypeChecking.ProjectionLike
- Agda.TypeChecking.Quote
- Agda.TypeChecking.RecordPatterns
- Agda.TypeChecking.Records
- Agda.TypeChecking.Reduce
- Agda.TypeChecking.Rewriting
- Rules
- Agda.TypeChecking.Serialise
- Agda.TypeChecking.SizedTypes
- Agda.TypeChecking.Substitute
- Agda.TypeChecking.SyntacticEquality
- Agda.TypeChecking.Telescope
- Test
- Agda.TypeChecking.Tests
- Agda.TypeChecking.With
- Utils
- Agda.Utils.BiMap
- Agda.Utils.Char
- Agda.Utils.Cluster
- Agda.Utils.Either
- Agda.Utils.Favorites
- Agda.Utils.FileName
- Agda.Utils.Fresh
- Agda.Utils.Function
- Agda.Utils.Functor
- Agda.Utils.Geniplate
- Graph
- Agda.Utils.Hash
- Agda.Utils.HashMap
- IO
- Agda.Utils.Impossible
- Agda.Utils.List
- Agda.Utils.Map
- Agda.Utils.Maybe
- Agda.Utils.Monad
- Agda.Utils.Null
- Agda.Utils.PartialOrd
- Agda.Utils.Permutation
- Agda.Utils.Pointed
- Agda.Utils.Pointer
- Agda.Utils.Pretty
- Agda.Utils.QuickCheck
- Agda.Utils.ReadP
- Agda.Utils.SemiRing
- Agda.Utils.Size
- Agda.Utils.String
- Agda.Utils.Suffix
- Agda.Utils.TestHelpers
- Agda.Utils.Time
- Agda.Utils.Trie
- Agda.Utils.Tuple
- Agda.Utils.Unicode
- Agda.Utils.Update
- Agda.Utils.VarSet
- Agda.Utils.Warshall
- Agda.Version
Flags
Manual Flags
Name | Description | Default |
---|---|---|
epic | Install the Epic compiler. | Disabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- Agda-2.4.2.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)
Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
Versions [RSS] | 2.2.0, 2.2.2, 2.2.4, 2.2.6, 2.2.8, 2.2.10, 2.3.0, 2.3.0.1, 2.3.2, 2.3.2.1, 2.3.2.2, 2.4.0, 2.4.0.1, 2.4.0.2, 2.4.2, 2.4.2.1, 2.4.2.2, 2.4.2.3, 2.4.2.4, 2.4.2.5, 2.5.1, 2.5.1.1, 2.5.1.2, 2.5.2, 2.5.3, 2.5.4, 2.5.4.1, 2.5.4.2, 2.6.0, 2.6.0.1, 2.6.1, 2.6.1.1, 2.6.1.2, 2.6.1.3, 2.6.2, 2.6.2.1, 2.6.2.2, 2.6.3, 2.6.4, 2.6.4.1, 2.6.4.2, 2.6.4.3, 2.7.0, 2.7.0.1 (info) |
---|---|
Change log | CHANGELOG |
Dependencies | Agda (==2.4.2), array (>=0.1 && <0.6), base (>=4.2 && <4.8), binary (>=0.6 && <0.8), boxes (>=0.1.3 && <0.2), bytestring (>=0.9.0.1 && <0.11), containers (>=0.1 && <0.6), data-hash (==0.2.0.0), deepseq (>=1.3 && <1.4), directory (>=1.0 && <1.3), equivalence (>=0.2.4 && <0.3), filepath (>=1.1 && <1.4), geniplate (>=0.6.0.3 && <0.7), hashable (>=1.1.2.3 && <1.2 || >=1.2.1.0 && <1.3), hashtables (>=1.0 && <1.2), haskeline (>=0.7 && <0.8), haskell-src-exts (>=1.9.6 && <1.16), mtl (>=2.1.1 && <2.3), old-time (>=1.0 && <1.2), parallel (<3.3), pretty (>=1.0 && <1.2), process (>=1.0.1.0 && <1.3), QuickCheck (>=2.7.5 && <2.8), STMonadTrans (>=0.3.2 && <0.4), strict (>=0.3.2 && <0.4), text (>=0.11 && <1.3), time (>=1.4 && <1.5), transformers (>=0.3 && <0.5), unordered-containers (>=0.2 && <0.3), Win32 (>=2.2 && <2.4), xhtml (>=3000.2 && <3000.3), zlib (>=0.4.0.1 && <0.6) [details] |
Tested with | ghc ==7.2.2, ghc ==7.4.2, ghc ==7.6.3, ghc ==7.8.3 |
License | LicenseRef-OtherLicense |
Author | Ulf Norell, Andreas Abel, Nils Anders Danielsson, Makoto Takeyama, Catarina Coquand, with contributions by Stevan Andjelkovic, Marcin Benke, Jean-Philippe Bernardy, James Chapman, Jesper Cockx, Dominique Devriese, Peter Divanski, Fredrik Nordvall Forsberg, Olle Fredriksson, Daniel Gustafsson, Patrik Jansson, Alan Jeffrey, Wolfram Kahl, Fredrik Lindblad, Francesco Mazzoli, Stefan Monnier, Darin Morrison, Guilhem Moulin, Nicolas Pouillard, Andres Sicard-Ramirez, Andrea Vezzosi and many more. |
Maintainer | Ulf Norell <ulfn@chalmers.se> |
Revised | Revision 2 made by AndreasAbel at 2014-09-09T17:02:20Z |
Category | Dependent types |
Home page | http://wiki.portal.chalmers.se/agda/ |
Bug tracker | http://code.google.com/p/agda/issues/list |
Source repo | head: git clone https://github.com/agda/agda.git this: git clone https://github.com/agda/agda(tag 2.4.2) |
Uploaded | by UlfNorell at 2014-08-29T07:52:35Z |
Distributions | Arch:2.6.4.1, Debian:2.6.1, Fedora:2.6.4.1, FreeBSD:2.4.2.3, LTSHaskell:2.7.0.1, NixOS:2.7.0.1, Stackage:2.7.0.1 |
Reverse Dependencies | 8 direct, 1 indirect [details] |
Executables | agda-mode, agda |
Downloads | 64584 total (544 in the last 30 days) |
Rating | 2.75 (votes: 10) [estimated by Bayesian average] |
Your Rating | |
Status | Docs uploaded by user [build log] All reported builds failed [all 1 reports] |