Haskell:处理含糊不清的进口商品

时间:2016-02-19 08:09:59

标签: haskell import

我一直在收到含糊不清的警告,有时甚至是错误。这只是一个明确的例子。我正在使用doctest:

import Turtle
import Prelude hiding (FilePath)
import System.IO hiding (FilePath, stdout, stderr) -- trying to hide std...
import Text.Regex.TDFA

它显然有效,至少目前是这样,但这些警告是浩繁的,烦人的,可能是危险的。

我试图应对隐藏,就像这样(Main.hs,所有导入):

fprintf

但没有区别。

是否有正确的一般方法?

1 个答案:

答案 0 :(得分:1)

您可以编辑.ghci文件并添加

:m - Prelude

这样GHCi不应该预加载Prelude,但是就像Jubobs一样,我建议你不要首先重用这些名字,或者用某种组合导入(合格)

import Turtle hiding (stdout)
import qualified Turtle as T
import Turtle ( noOverlappingFunc, NonOverlappingType )

这只是写作的轻微不便

T.stdout

代替。

恕我直言Prelude中的内容隐藏起来并不是一个好主意 - 除了你看到的问题总是存在 peaple <的问题/ em>阅读您的代码及其期望