The GHC developers are very pleased to announce the availability of the
third alpha prerelease of GHC 9.8.1. Binary distributions, source
distributions, and documentation are available at downloads.haskell.org.
GHC 9.8 will bring a number of new features and improvements, including:
-
Preliminary support the
TypeAbstractions
language extension,
allowing types to be bound in type declarations. -
Support for the
ExtendedLiterals
extension, providing
more consistent support for non-word-sized numeric literals in the surface
language -
Improved rewrite rule matching behavior, allowing limited matching of
higher-order patterns -
Better support for user-defined warnings by way of the
WARNING
pragma -
The introduction of the new
GHC.TypeError.Unsatisfiable
constraint, allowing more predictable user-defined type errors -
Implementation of the export deprecation proposal,
allowing module exports to be marked withDEPRECATE
pragmas -
The addition of build semaphore support for parallel compilation,
allowing better use of parallelism across GHC builds -
More efficient representation of info table provenance information,
reducing binary sizes by nearly 80% in some cases when
-finfo-table-map
is in use
A full accounting of changes can be found in the release notes. This alpha
includes roughly a dozen changes relative to alpha 2, including what we believe
should be nearly the last changes to GHC’s boot libraries.
We would like to thank GitHub, IOG, the Zw3rk stake pool,
Well-Typed, Tweag I/O, Serokell, Equinix, SimSpace, the Haskell
Foundation, and other anonymous contributors whose on-going financial
and in-kind support has facilitated GHC maintenance and release
management over the years. Finally, this release would not have been
possible without the hundreds of open-source contributors whose work
comprise this release.
As always, do give this release a try and open a ticket if you see
anything amiss.