haskell - GHC Haskell2010 何时首次包含在 Haskell 平台中,Haskell98 样式模块何时被隐藏?

标签 haskell ghc

目前我们的项目遇到了一些麻烦,因为我们发现在新的 GHC 版本中,默认情况下会隐藏像 Char 这样的旧模块,而默认会隐藏新模块(例如 Data.Char)。我现在正在尝试弄清楚是哪个版本引入了 Data.、Control. 等模块,以及哪个 GHC 版本首先隐藏了像 Char 这样的包。

最佳答案

分层模块在古代就被引入了(它们已经存在于早期的 ghc-6.* 版本中,挖掘旧版本表明分层模块是在 ghc-5.* 时代(大约 2002/2003 年)引入的),并且 haskell98 模块在 ghc-7.2 中默认隐藏,因为有足够多的更改导致 haskell98base 不兼容。

来自 7.2.1 的发行说明:

1.5.12.13. haskell98

Version number 2.0.0.0 (was 1.1.0.1)

It is no longer possible to use the haskell98 package with the base package, as it now includes the Prelude and Numeric modules. The haskell98 package is therefore now hidden by default.

您的项目的选项是使其依赖于 haskell98而不是基于基础,或者更新您的导入以使用分层模块。

后者是推荐的路径,除非您特别依赖于某些已更改的 Haskell98 功能。前者排除了许多软件包的使用,具体取决于 base .

关于haskell - GHC Haskell2010 何时首次包含在 Haskell 平台中,Haskell98 样式模块何时被隐藏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10320695/

相关文章:

Haskell:括号有效,但 $ 抛出错误

haskell - GHC 7.4 更新打破了haskell98?

haskell - 警告 : The import of `Module` is redundant except perhaps to import instances from `Module`

haskell - 通过核心进行性能分析

haskell - 如何从 haskell 中的 IOError 获取 errno?

haskell - 为什么 Applicative 应该是 Monad 的父类(super class)?

haskell - Cabal install ghc-mod 提示损坏的软件包 (GHC 7.6.3)

haskell cabal : How to ignore dependencies

haskell - 是什么让 Haskell 的类型系统比其他语言的类型系统多 "powerful"?

haskell - 如果我重新开始编译,它会从中断的地方继续吗?