[Agda] Agda 2.4.0.2 released
Andreas Abel
abela at chalmers.se
Tue Jul 29 22:22:57 CEST 2014
The next maintenance release of Agda 2.4.0 is out! It has mainly
bug-fixes, plus a few small new features.
Get it with cabal from hackage or download from the Agda wiki!
http://wiki.portal.chalmers.se/agda/pmwiki.php?n=Main.Download
https://hackage.haskell.org/package/Agda
Have fun,
Andreas
Important changes since 2.4.0.1:
* The Agda input mode now supports alphabetical super and subscripts,
in addition to the numerical ones that were already present.
[Issue 1240]
* New feature: Interactively split result.
Make case (C-c C-c) with no variables given tries to split on the
result to introduce projection patterns. The hole needs to be of
record type, of course.
test : {A B : Set} (a : A) (b : B) → A × B
test a b = ?
Result-splitting ? will produce the new clauses:
proj₁ (test a b) = ?
proj₂ (test a b) = ?
If hole is of function type ending in a record type, the necessary
pattern variables will be introduced before the split. Thus, the
same result can be obtained by starting from:
test : {A B : Set} (a : A) (b : B) → A × B
test = ?
* The so far undocumented ETA pragma now throws an error if applied to
definitions that are not records.
ETA can be used to force eta-equality at recursive record types,
for which eta is not enabled automatically by Agda.
Here is such an example:
mutual
data Colist (A : Set) : Set where
[] : Colist A
_∷_ : A → ∞Colist A → Colist A
record ∞Colist (A : Set) : Set where
coinductive
constructor delay
field force : Colist A
open ∞Colist
{-# ETA ∞Colist #-}
test : {A : Set} (x : ∞Colist A) → x ≡ delay (force x)
test x = refl
Note: Unsafe use of ETA can make Agda loop, e.g. by triggering
infinite eta expansion!
* Bugs fixed (see https://code.google.com/p/agda/issues):
1203
1205
1209
1213
1214
1216
1225
1226
1231
1233
1239
1241
1243
--
Andreas Abel <>< Du bist der geliebte Mensch.
Department of Computer Science and Engineering
Chalmers and Gothenburg University, Sweden
andreas.abel at gu.se
http://www2.tcs.ifi.lmu.de/~abel/
More information about the Agda
mailing list