[Agda] [ANNOUNCE] Agda 2.6.3 release candidate 3
Andrés Sicard-Ramírez
andres.sicard.ramirez at gmail.com
Fri Jan 6 19:02:39 CET 2023
Dear all,
The Agda Team is very pleased to announce the third release candidate
of Agda 2.6.3. We plan to release 2.6.3 in a few days.
# Highlights
* Added support for [Erased Cubical
Agda](https://agda.readthedocs.io/en/v2.6.2.2.20230105/language/cubical.html#cubical-agda-with-erased-glue),
a variant of Cubical Agda that is supported by the GHC backend,
under the flag `--erased-cubical`.
* Added a new flag `--cubical-compatible` to turn on generation of
Cubical Agda-specific support code (previously this behaviour was
part of `--without-K`).
Since `--cubical-compatible` mode implies that functions should work
with the preliminary support for [indexed inductive types in Cubical
Agda](https://agda.readthedocs.io/en/v2.6.2.2.20230105/language/cubical.html#indexed-inductive-types),
many pattern matching functions will now emit an
`UnsupportedIndexedMatch` warning, indicating that the function will
not compute when applied to transports (from `--cubical` code).
This warning can be disabled with `-WnoUnsupportedIndexedMatch`, which
can be used either in an `OPTIONS` pragma or in your `agda-lib` file.
The latter is recommended if your project is only
`--cubical-compatible`, or if it is already making extensive use of
indexed types.
Note that code that uses (only) `--without-K` can no longer be
imported from code that uses `--cubical`. Thus it may make sense to
replace `--without-K` with `--cubical-compatible` in library code,
if possible.
Note also that Agda tends to be quite a bit faster if `--without-K`
is used instead of `--cubical-compatible`.
* Agda 2.6.3 seems to type-check one variant of the standard library
about [30% faster](https://github.com/agda/agda/issues/6049#issuecomment-1329163727)
than Agda 2.6.2.2 (on one system; the library was changed in a small
way between the tests to accommodate changes to Agda). In that test
the standard library did not use the new flag
`--cubical-compatible`. With that flag enabled in all the files that
used to use `--without-K` (and the warning `UnsupportedIndexedMatch`
turned off) Agda 2.6.3 was still about 10% faster.
* New primitives `declareData`, `defineData`, and `unquoteDecl data`
for generating new data types have been added to the [reflection
API](https://agda.readthedocs.io/en/v2.6.2.2.20230105/language/reflection.html#metaprogramming).
# Changes respect to RC2
We fixed the following issues:
[#3660](https://github.com/agda/agda/issues/3660)
[#6377](https://github.com/agda/agda/issues/6377)
[#6379](https://github.com/agda/agda/issues/6379)
# GHC supported versions
Agda 2.6.3 RC3 has been tested with GHC 9.4.4, 9.2.5, 9.0.2, 8.10.7,
8.8.4, 8.6.5, 8.4.4, 8.2.2 and 8.0.2 on Linux, macOS and Windows.
# Installation
Agda 2.6.3 RC3 can be installed using cabal-install or stack:
* Getting the release candidate
$ cabal get
https://hackage.haskell.org/package/Agda-2.6.2.2.20230105/candidate/Agda-2.6.2.2.20230105.tar.gz
$ cd Agda-2.6.2.2.20230105
* Using cabal-install
$ cabal install
* Using stack
$ stack --stack-yaml stack-a.b.c.yaml install
replacing `a.b.c` with your version of GHC.
# Standard library
For the time being, you can use standard library v1.7.2 - RC1
(https://github.com/agda/agda-stdlib/archive/v1.7.2-rc1.zip) with Agda
2.6.3 RC3.
# Fixed issues
https://hackage.haskell.org/package/Agda-2.6.2.2.20230105/candidate/changelog
Enjoy Agda 2.6.3 RC3 and please test as much as possible.
--
Andrés, on behalf of the Agda Team
More information about the Agda
mailing list