Important changes since 2.2.2:
open import
and open module
. The
declaration open import M <using/hiding/renaming>
now translates to
import A
open A <using/hiding/renaming>
instead of
import A <using/hiding/renaming>
open A
The same translation is used for open module M = E …
. Declarations
involving the keywords as or public are changed in a corresponding
way (as
always goes with import, and public
always with open).
This change means that import directives do not affect the qualified names when open import/module is used. To get the old behaviour you can use the expanded version above.
module A where
postulate X : Set
module B (Y : Set) where
open A public
In Agda 2.2.2 B.X
has type (Y : Set) → Set
, whereas in
Agda 2.2.4 B.X
has type Set.
Previously it was not possible to export a given constructor name
through two different open public
statements in the same module.
This is now possible.
Unicode subscript digits are now allowed for the hierarchy of
universes (Set₀
, Set₁
, …): Set₁
is equivalent to Set1
.