GHC 9.8.1-alpha1 is now available

The GHC developers are very pleased to announce the availability of the
first 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 syntax 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;
    with coming support in cabal-install this will allow better use of
    parallelism in multi-package builds

  • More efficient representation of info table provenance information,
    reducing binary sizes by over 50% in some cases when
    -finfo-table-map is in use

A full accounting of changes can be found in the release notes.

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.

28 Likes

Yay, that’s my first significant contribution! I think the best description is in the GHC proposal: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0555-template-patterns.rst

16 Likes

I’d love to see anti-instances with Unsatisfiable catch on everywhere. I can imagine them being especially useful as documentation

edit: Esp nice pairing them with property-based doctests asserting on laws they don’t meet

6 Likes

Congratulations to the GHC release team!

2 Likes

Looks like, the name of the extension is TypeAbstractions. Also,

to not disappoint our conservative friends, better be fixed s/liberals/literals/ :joy:

4 Likes

Thanks for pointing these out!

3 Likes