Release 1.3.2 of the MetaCoq project for Coq 8.20 is available both as source and through opam. See the website for a detailed overview of the project, introductory material and related articles and presentations, and the release notes for 1.3.1 for a summary of the changes w.r.t. previous versions.
The main changes in this new version w.r.t. v1.3.1 are:
What's Changed
-
Proof that reordering of constructors is correct by @mattam82 in #1095
This allows in particular to switch the representation of Coq booleans so that extracted code matches the ocaml representation of booleans, making interoperability with existing OCaml code easier. -
Add the
force (lazy t)
evaluation rule to LambdaBox by @mattam82 in #1089
We verify that the evaluation rule is preserved by the verified transformations. In particular, this allows the coq-verified-extraction package and certicoq to support coinductive types and cofixpoints by interpreting lazy/force. The verification of the translation from cofixpoints to fixpoints + lazy/force is however still a work in progress.
Full Changelog: v1.3.1-8.19...v1.3.2-8.19