haskell - GHC 导入功能或错误

标签 haskell ghc

我发现以下代码被 GHC 接受:

import Prelude hiding (filter)
import qualified Prelude as P

这两个导入的想法是让所有 Prelude 功能照常可用,但需要 filter合格为P.filter .

我从来没有在任何地方看到过类似的例子,因此我的问题是:这是 GHC 中的一个特性还是一个错误?

谢谢

最佳答案

这是一个功能,例如,如果您在 Github 中搜索,您会看到它在野外被大量使用。

一个广泛使用的习语是这样的:

import Data.Text (Text)
import qualified Data.Text as T

这样您就不必获得资格 Text在你的类型中,你没有得到与 Prelude 冲突的函数函数(如 Data.Text.filterData.Text.zip 等)。

关于haskell - GHC 导入功能或错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33715010/

相关文章:

haskell - Control.Lens 中的 Market 这个名称背后的原因是什么?

performance - 分析 Haskell 程序的缓慢性能

haskell - Haskell 中的纯错误处理,带有 : how to fold with error possibility?

mysql - mysql-simple 执行中不需要 IO 字符串

haskell - 对 GHC 分析器输出中的类型类函数进行拆解

haskell - 在 haskell 中实现嵌套集合

haskell : understanding "No instance for" error messages in ghci

haskell - GHC:插入编译日期

haskell - StableNames 相对于 realUnsafePtrEquality# 有何优势,反之亦然?

haskell - GHC 包冲突