The GHC developers are very pleased to announce the availability of the
first alpha prerelease of GHC 10.0.1. Binary distributions, source
distributions, and documentation are available at downloads.haskell.org and
via GHCup.
GHC 10.0 will bring a number of new features and improvements, including:
-
The default language edition is now
GHC2024
(GHC Proposal #632, #26039). -
TypeandConstraintare now completely distinct types, just as much as
IntandBool(#24279). -
The new QualifiedStrings language extension
(GHC Proposal #723) allows string literals to be
qualified using module qualification syntax, so thatM."my string"
desugars toM.fromString "my string". -
The treatment of static forms has been simplified, implementing
GHC Proposal #732 (#26556). The free term variables of
(static e)must now be bound at top level. -
-fpolymorphic-specialisationis now (re)enabled by default (#23559), -
Bytecode can now be written to disk with
-fwrite-byte-codeand packaged
into bytecode libraries with-bytecodelib, which the interpreter can use
to satisfy package dependencies (#26298). -
Executables can now be properly statically linked with the new
-fully-staticand-static-externalflags (#26434). -
SIMD support in the AArch64 native code generator (#26536).
-
A new
pollI/O manager, which is now the default in the single-threaded
RTS on all POSIX platforms except macOS (!9677). -
Version 2 of the GHC Jobserver Protocol for GHC’s
-jsem
jobserver on Linux and other POSIX platforms (#25087, #27253). This is
sadly a necessary breaking change.-jsemrequires cabal-install 3.18 or
later, and is otherwise ignored with a warning, falling back to sequential
compilation. -
Changes to
base: -
The minimum bootstrap compiler is now GHC 9.10, LLVM versions up to 23 are
supported (#26813, #27764), and the Debian 9, Debian 10, Ubuntu 18.04
and Ubuntu 20.04 bindists have been dropped in favour of a new Debian 13
bindist (#25876). -
… and many more
A full accounting of changes can be found in the release notes.
See the migration guide for guidance on migrating programs to this release.
As always, GHC’s release status, including planned future releases, can be
found on the GHC Wiki status.
Given the many changes in this major release, we would very much appreciate
testing on downstream workloads.
GHC development is sponsored by:
- Juspay
- QBayLogic
- Channable
- Haskell Foundation
- Serokell
- Well-Typed
- Tweag
- Dotcom-Monitor
- LoadView
- Web Hosting Buddy
- Find My Electric
- Standard Chartered
- UpCloud
- Mercury
We would like to thank these sponsors 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.