Glasgow Haskell Compiler (GHC)

lang

Haskell 是一种通用、静态类型、纯函数式编程语言,具有类型推断和惰性求值功能。Glasgow Haskell Compiler (GHC) 是 Haskell 的最先进优化编译器。它包括一个交互式 REPL、多个分析器、替代代码生成后端,并支持 x86、AArch64、PowerPC、s390x、RiscV、WASM 架构。

版本 发布时间 计划中的后续版本 推荐使用 最新版本
9.12 1 年前
(2024年11月15日)
9.12.2
(2025 年 3 月 14 日)
9.10 1年零7个月前
(2024年5月10日)
9.10.3
(2025 年 9 月 11 日)
9.8 2 年前
(2023 年 10 月 9 日)
9.8.4
(2024年12月2日)
9.6 2 年 9 个月前
(2023年03月10日)
9.6.7
(24 Mar 2025)
9.4 3 年前
(2022 年 8 月 7 日)
9.4.8
(2023年11月10日)
9.2 4 年前
(2021 年 10 月 29 日)
9.2.8
(2023年5月26日)
9.0 4年10个月前
(2021年2月3日)
9.0.2
(2021 年 12 月 25 日)
8.10 5年9个月前
(2020 年 3 月 22 日)
8.10.7
(2021 年 8 月 27 日)
8.8 6 年前
(2019年8月25日)
8.8.4
(2020 年 7 月 15 日)
8.6 7 年前
(2018 年 9 月 21 日)
8.6.5
(2019年4月23日)
8.4 7 年前
(2018 年 3 月 8 日)
8.4.4
(2018年5月29日)
8.2 8 年前
(2017 年 7 月 21 日)
8.2.2
(2017 年 7 月 22 日)
8.0 9 年前
(2016 年 5 月 17 日)
8.0.2
(2017 年 1 月 11 日)

GHC 的版本支持政策是非正式定义的,作为一种工作惯例,可以在 GHC wiki 上找到文档。

即将发生的变化

从 GHC 9.14 开始(预计于 2025 年 8 月发布),将有预先宣布的指定为 LTS 的主要版本。第一个 LTS 版本将是 9.14。LTS 版本将提供至少两年的支持,以错误修复次要版本更新的形式。新功能不会被反向移植到 LTS 版本。后续 LTS 版本之间将有六个月的支持期重叠。

术语

因为 GHC 是一个自举编译器(意思是,它大部分是用 Haskell 编写的,并且会编译自己),所以有一些版本控制方面的考虑因素并不完全符合 SemVer。

GHC 定义了

  • 主要版本(Major release) - x.y.1,其中 y 是偶数。
  • 次要版本(Minor release) - x.y.z,其中 y 是偶数且 z ≥ 2

x.y.zy 为奇数的情况保留用于开发目的。这些版本被称为快照,从不宣布普遍可用。

发布政策

  • 次要版本通常不引入新接口、编译器功能添加或删除,也不对随编译器附带的库进行重大更新。它们只修复该分支上先前版本中的错误或性能问题。

  • 目标平台分为第 1 层、第 2 层和第 3 层;版本的发布以在所有第 1 层平台上的正常工作状态为条件。会尽一切努力修复第 2/3 层平台上的错误,但这些不被视为发布阻碍。

  • 在官方二进制文件发布宣布之前,源分发包会提前一周提供给分发包维护者。

  • 两次发布政策(Two-release policy)。GHC 的每个版本必须能够使用最近两个主要版本的 GHC 的最新次要版本进行自举。

发布时间表

主要版本每年发布两次。

次要版本全年发布,没有固定时间表。

每个版本发布前都有一个或多个发布候选版本,并在 GHC 邮件列表中宣布。

更多信息可在 Glasgow Haskell Compiler (GHC) 网站上找到。

您应该运行上面最右侧一列列出的受支持版本号之一。

ghc --version

显示产品标识符

您可以通过 GitHub :octocat: 提交对本页的改进。本页有一个相应的讨论页

此页面的 JSON 版本可在 /api/v1/products/ghc/ 获取。有关更多信息,请参阅 API 文档。您可以在 /calendar/ghc.ics 订阅 iCalendar 源。