Agda: A dependently typed functional programming language and proof assistant
Agda is a dependently typed functional programming language: It has inductive families, which are like 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.
Note that if you want to use the command-line program (agda), then you should also install the Agda-executable package. This package includes an Emacs mode for Agda, but you need to set up the Emacs mode yourself (see the README).
[Skip to Readme]
Modules
- Agda
- Compiler
- Agate
- Agda.Compiler.Agate.Classify
- Agda.Compiler.Agate.Common
- Agda.Compiler.Agate.Main
- Agda.Compiler.Agate.OptimizedPrinter
- Agda.Compiler.Agate.TranslateName
- Agda.Compiler.Agate.UntypedPrinter
- Alonzo
- Agda.Compiler.Alonzo.Haskell
- Agda.Compiler.Alonzo.Main
- Agda.Compiler.Alonzo.Names
- Agda.Compiler.Alonzo.PatternMonad
- Agda.Compiler.HaskellTypes
- MAlonzo
- Agda.Compiler.MAlonzo.Compiler
- Agda.Compiler.MAlonzo.Encode
- Agda.Compiler.MAlonzo.Misc
- Agda.Compiler.MAlonzo.Pretty
- Agda.Compiler.MAlonzo.Primitives
- Agate
- Interaction
- Agda.Interaction.BasicOps
- CommandLine
- Agda.Interaction.CommandLine.CommandLine
- Agda.Interaction.Exceptions
- Agda.Interaction.GhciTop
- Highlighting
- Agda.Interaction.Highlighting.Emacs
- Agda.Interaction.Highlighting.Generate
- Agda.Interaction.Highlighting.HTML
- Agda.Interaction.Highlighting.Precise
- Agda.Interaction.Highlighting.Range
- Agda.Interaction.Highlighting.Vim
- Agda.Interaction.Imports
- Agda.Interaction.MakeCase
- Agda.Interaction.Monad
- Agda.Interaction.Options
- Agda.Main
- Syntax
- Agda.Syntax.Abstract
- Agda.Syntax.Abstract.Name
- Agda.Syntax.Abstract.Pretty
- Agda.Syntax.Abstract.Views
- Agda.Syntax.Common
- Agda.Syntax.Concrete
- Agda.Syntax.Concrete.Definitions
- Agda.Syntax.Concrete.Name
- Agda.Syntax.Concrete.Operators
- Agda.Syntax.Concrete.Operators.Parser
- Agda.Syntax.Concrete.Pretty
- Agda.Syntax.Fixity
- Agda.Syntax.Info
- Agda.Syntax.Internal
- Agda.Syntax.Internal.Generic
- Agda.Syntax.Internal.Pattern
- Agda.Syntax.Literal
- Agda.Syntax.Parser
- Agda.Syntax.Parser.Alex
- Agda.Syntax.Parser.Comments
- Agda.Syntax.Parser.Layout
- Agda.Syntax.Parser.LexActions
- Agda.Syntax.Parser.Lexer
- Agda.Syntax.Parser.LookAhead
- Agda.Syntax.Parser.Monad
- Agda.Syntax.Parser.Parser
- Agda.Syntax.Parser.StringLiterals
- Agda.Syntax.Parser.Tokens
- Agda.Syntax.Position
- Scope
- Agda.Syntax.Scope.Base
- Agda.Syntax.Scope.Monad
- Agda.Syntax.Strict
- Translation
- Agda.Syntax.Translation.AbstractToConcrete
- Agda.Syntax.Translation.ConcreteToAbstract
- Agda.Syntax.Translation.InternalToAbstract
- Agda.Syntax.Abstract
- Termination
- Agda.Termination.CallGraph
- Agda.Termination.Lexicographic
- Agda.Termination.Matrix
- Agda.Termination.Semiring
- Agda.Termination.TermCheck
- Agda.Termination.Termination
- Agda.Tests
- Agda.TypeChecker
- TypeChecking
- Agda.TypeChecking.Abstract
- Agda.TypeChecking.Constraints
- Agda.TypeChecking.Conversion
- Agda.TypeChecking.Coverage
- Agda.TypeChecking.Coverage.Match
- Agda.TypeChecking.DisplayForm
- Agda.TypeChecking.Empty
- Agda.TypeChecking.Errors
- Agda.TypeChecking.EtaContract
- Agda.TypeChecking.Free
- Agda.TypeChecking.Implicit
- Agda.TypeChecking.Injectivity
- Agda.TypeChecking.MetaVars
- Agda.TypeChecking.Monad
- Agda.TypeChecking.Monad.Base
- 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.Signature
- Agda.TypeChecking.Monad.SizedTypes
- Agda.TypeChecking.Monad.State
- Agda.TypeChecking.Monad.Statistics
- Agda.TypeChecking.Monad.Trace
- Patterns
- Agda.TypeChecking.Patterns.Match
- Agda.TypeChecking.Polarity
- Agda.TypeChecking.Positivity
- Agda.TypeChecking.Pretty
- Agda.TypeChecking.Primitive
- Agda.TypeChecking.Rebind
- Agda.TypeChecking.Records
- Agda.TypeChecking.Reduce
- Rules
- Agda.TypeChecking.Rules.Builtin
- Agda.TypeChecking.Rules.Data
- Agda.TypeChecking.Rules.Decl
- Agda.TypeChecking.Rules.Def
- Agda.TypeChecking.Rules.LHS
- Agda.TypeChecking.Rules.LHS.Implicit
- Agda.TypeChecking.Rules.LHS.Instantiate
- Agda.TypeChecking.Rules.LHS.Problem
- Agda.TypeChecking.Rules.LHS.Split
- Agda.TypeChecking.Rules.LHS.Unify
- Agda.TypeChecking.Rules.Record
- Agda.TypeChecking.Rules.Term
- Agda.TypeChecking.Serialise
- Agda.TypeChecking.SizedTypes
- Agda.TypeChecking.Substitute
- Agda.TypeChecking.Telescope
- Test
- Agda.TypeChecking.Test.Generators
- Agda.TypeChecking.Tests
- Agda.TypeChecking.With
- Utils
- Agda.Utils.Char
- Agda.Utils.Either
- Agda.Utils.FileName
- Agda.Utils.Fresh
- Agda.Utils.Function
- Agda.Utils.Generics
- Agda.Utils.Graph
- Agda.Utils.Hash
- Agda.Utils.IO
- Agda.Utils.Impossible
- Agda.Utils.List
- Agda.Utils.Map
- Agda.Utils.Maybe
- Agda.Utils.Monad
- Agda.Utils.Monad.Undo
- Agda.Utils.Permutation
- Agda.Utils.Pointer
- Agda.Utils.Pretty
- Agda.Utils.QuickCheck
- Agda.Utils.ReadP
- Agda.Utils.SemiRing
- Agda.Utils.Serialise
- Agda.Utils.Size
- Agda.Utils.String
- Agda.Utils.Suffix
- Agda.Utils.TestHelpers
- Agda.Utils.Trace
- Agda.Utils.Trie
- Agda.Utils.Tuple
- Agda.Utils.Unicode
- Agda.Utils.Warshall
- Agda.Version
- Compiler
Downloads
- Agda-2.2.2.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
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) |
---|---|
Dependencies | array (>=0.1 && <1), base (>=3 && <4), binary (>=0.4.4 && <0.6), bytestring (>=0.9.0.1 && <1), containers (>=0.1.0 && <1), directory (>=1 && <2), filepath (>=1.1 && <2), ghc-prim (>=0.1 && <1), haskeline (>=0.3 && <0.7), haskell-src (>=1.0.1.1 && <2), haskell98 (>=1.0.1 && <2), mtl (>=1.1 && <2), old-time (>=1 && <2), pretty (>=1 && <2), process (>=1.0.1.0 && <2), QuickCheck (==2.1.0.1), utf8-string (>=0.3 && <0.4), xhtml (>=3000.2 && <3000.3), zlib (>=0.4.0.1 && <1) [details] |
Tested with | ghc ==6.8.3 && ==6.10.2 |
License | LicenseRef-OtherLicense |
Author | Ulf Norell, Catarina Coquand, Makoto Takeyama, Nils Anders Danielsson, Andreas Abel, ... |
Maintainer | Ulf Norell <ulfn@chalmers.se> |
Category | Dependent types |
Home page | http://wiki.portal.chalmers.se/agda/ |
Bug tracker | http://code.google.com/p/agda/issues/list |
Source repo | head: darcs get http://code.haskell.org/Agda/ this: darcs get http://code.haskell.org/Agda/ --tag 2.2.2 |
Uploaded | by NilsAndersDanielsson at 2009-04-16T21:53:10Z |
Distributions | Arch:2.6.4.3, Debian:2.6.1, Fedora:2.6.4.3, 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 |
Downloads | 65510 total (109 in the last 30 days) |
Rating | 2.75 (votes: 10) [estimated by Bayesian average] |
Your Rating | |
Status | Docs not available [build log] All reported builds failed as of 2017-01-01 [all 6 reports] |