GHC 9.8.1-alpha3 is now available

bgamari - 2023-08-23

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 with DEPRECATE 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.