Releases: idris-lang/Idris2
[v0.8.0] 2025 Hallowe'en Release
It has been nearly 2 years since the previous release, so it was high time for a new one and here it is!
Highlights include:
- Autobind and Typebind modifier on operators allow the user to customise the syntax of operator to look more like a binder.
- Totality checking will now look under data constructors, so
Just xswill be considered smaller thanJust (x :: xs). - Typst files can be compiled as Literate Idris.
- Constructors with certain tags (
CONS,NIL,JUST,NOTHING) are replaced with_builtin.<TAG>(eg_builtin.CONS). This allows the identity optimisation to optimise conversions between list-shaped things. - Refactored
Uninhabitedimplementation forData.List.Elem,Data.List1.Elem,Data.SnocList.Elem, andData.Vect.Elemso it can be used for homogeneous (===) and heterogeneous (~=~) equality. - The
RefCbackend compiler can emit precise reference counting instructions where a reference is dropped as soon as possible. This allows you to reuse unique variables and optimize memory consumption. - Fix memory leaks of
IORefinRefCbackend. Now thatIORefholds values by itself,global_IORef_Storageis no longer needed. - The NodeJS executable output to
build/exec/now has its executable bit set. That file already had a NodeJS shebang at the top, so now it is fully ready to go after compilation.
For a detailed list of changes, please see the CHANGELOG.
As always, thanks to the many people who have contributed, both old and new, whether by adding features, fixing code, reporting issues, or anything else. You can find a list of names in CONTRIBUTORS.
Happy Hallowe'en! Have fun!
Version 0.7.0 (2023 release)
Highlights include:
- Size-change graphs are now matrices, faithfully implementing [Lee, Jones, and Ben-Amram; 2001]
- Elaborator scripts can now access project files, allowing for type-providers and similar
- Warnings on conflicting fixity declarations along with
%hidesupport for these - Numerous doc and error message enhancements, bug fixes, performance improvements, and much more
See the CHANGELOG for full details.
Version 0.6.0
v0.6.0 Update version number in CHANGELOG (#2734)
v0.5.1
This is to solve a couple of build issues. It requires either Idris v0.4.0, or the bootstrap code, to build.
Chez Scheme 9.5 (possibly earlier versions too, I haven't checked) is now sufficient for the bootstrap build, like previous versions of Idris. Also removed the dependency on sha256sum since this is not portable.