A prototypical dependently typed languages with sized types and variances.
Requires ghc
and cabal
, for instance via the Haskell Platform or via ghcup
.
In a shell, type
cabal update
cabal install MiniAgda
MiniAgda is not on Stackage because it depends on a specific version of haskell-src-exts
rather than the latest version.
You can install with stack
from source though, see next section.
-
Obtain the sources.
git clone https://github.com/andreasabel/miniagda cd miniagda
-
Checkout the desired version (optional): If you want to build a released version or a branch rather than the latest
master
, switch to this version/branch.git checkout $REF
E.g.
REF = v0.2022.3.11
for version0.2022.3.11
orREF = unfold
for branchunfold
. -
Building and running the tests (optional).
-
With
cabal
(requiresghc
in your PATH):cabal build --enable-tests cabal test
After building, you can run MiniAgda locally, e.g.:
cabal run miniagda -- examples/Gcd/gcd.ma
-
With
stack
:stack build --stack-yaml=stack-$GHCVER.yaml stack test --stack-yaml=stack-$GHCVER.yaml
At the time of writing (2025-07-23),
GHCVER
can be any of9.12
,9.10
,9.8
,9.6
, and some older ones.After building, you can run MiniAgda locally, e.g.:
stack run --stack-yaml=stack-9.12.yaml -- examples/Gcd/gcd.ma
You can copy
stack-$GHCVER.yaml
for your choice ofGHCVER
intostack.yaml
and drop the--stack-yaml
argument fromstack
invocation.
-
-
Install.
- With
cabal
(requiresghc
in your PATH):cabal install
- With
stack
:stack install --stack-yaml=stack-$GHCVER.yaml
Note that the respective installation directory should be on your PATH.
- With
See directories test/succeed/
and examples/
.
Some examples are commented on the (dormant) MiniAgda blog.