这不是一个重要的问题,但我只是想知道堆栈中是否有一些模块(在这种情况下,cabal 并不重要)Haskell 项目,这些模块被导入到许多其他模块中,如何使它们公开 这样我就不需要继续导入它们了?我还发现导入模块也不是“可传递的”。我的意思是这不会是一个问题,但它会节省大项目中的重复。感谢您提前的帮助。
重新出口这确实是正确的。但您可以
物品。这是为了尽量减少进口而经常采取的做法。例如,如果您创建一个 Yesod 网络服务器,通常会有一个名为 Import
的模块,可以重新导出所有重要方面。
Import
,从两个模块导出
maybe
和 either
:module Import (maybe, either) where
import Data.Either (either)
import Data.Maybe (maybe)
然后导入
Import
模块,我们在范围内得到
maybe
和 either
,它们源自两个不同的模块。