2013-07-07 71 views
7

我正在编写一个模块,其中有相当多的函数需要导出。此外这个模块有大量的数据结构。Haskell导出大量函数

假设我的模块包含以下内容:

module MyUtils (A(..), B(..),C(..),D(..),f1,f2,f3,f4,f5,f6) where 
--Data constructors 
data A = ... 
data B = ... 
data C = ... 
data D = ... 
--functions 
f1 :: A -> B 
f2 :: A -> B -> C 
f3 :: A -> B -> D 
f4 :: A -> B -> A 
f5 :: A -> B -> B 
f6 :: A -> B 

只见Data.Map源here 这表明它是一个非常大的列表导出大量的功能。

,但如果我要出口的一切,才能将其与尚未快捷方法,像做,

module MyUtils (..) where 

回答

11

是的,完全忽略(..)。默认情况下,导出所有名称。

module MyUtiles where 
... 

如果有你想旁边一个小你想隐藏的功能导出多项功能,最好把隐藏的人在另一个模块并将其导入。