GHC 9.8.1-alpha4 is now available

The GHC developers are very pleased to announce the availability of the
fourth alpha prerelease of GHC 9.8.1. Binary distributions, source
distributions, and documentation are available at

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

  • Improved rewrite rule matching behavior, allowing limited matching of
    higher-order patterns

  • Better support for user-defined warnings by way of the WARNING

  • 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 40 new commits relative to alpha 3, 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.