导入类型类方法的语法

时间:2014-04-06 20:03:52

标签: haskell syntax module typeclass

我注意到,如果直接导入(或导出)类型类的方法,GHC不会抱怨:

import Prelude (signum)

而不是使用"构造函数"语法:

import Prelude (Num(signum))

因此,我认为前一种语法没问题并且随之而来。但是,我遇到了fromInteger这个奇怪的问题,前一种语法不起作用 - GHC会默默地接受它,只是后来抱怨fromInteger从未导出过。我碰巧偶然发现了语言中某些未指明的行为吗?

这是一个最小的测试用例:

-- A.hs
module A (fromInteger) where
import Prelude (fromInteger)

-- B.hs
module B where
import Prelude ()
import A
f = fromInteger

0 个答案:

没有答案