gpt4 book ai didi

haskell - 使用 Haskell 一次导入整个模块

转载 作者:行者123 更新时间:2023-12-02 08:29:10 25 4
gpt4 key购买 nike

我对 Haskell 的库问题感到尴尬。我完成了一个由多个文件组成的库

src/MyLib/Firstbib.hs
src/MyLib/Secondbib.hs
...
src/MyLib/Lastbib.hs

此时,在 cabal install 之后,我可以分别导入每个文件

import MyLib.Firstbib
import MyLib.Secondbib
import MyLib.Lastbib

一切正常

现在,我想通过一个简单的导入来导入 MyLib 的所有这些部分:

import MyLib

我够不着。

我试图创建一个名为 src/MyLib.hs 的文件,其中包含:

module MyLib where 
import MyLib.Types
import MyLib.Functions
import MyLib.Algo.Line
import MyLib.Algo.Point

并用 Cabal 暴露它

Library
-- Modules exported by the library.
Hs-Source-Dirs: src
Exposed-modules: MyLib
, MyLib.Functions
, MyLib.Types
, MyLib.Algo.Line
, MyLib.Algo.Point

但它不起作用.!

仅通过一个模块导入来导入多个文件的正确方法是什么(例如 Gtk2Hs)?

最佳答案

这就是 MyLib 的样子——可能有不同的缩进:

module MyLib
(module MyLib.Types
,module MyLib.Functions
,module MyLib.Algo.Line
,module MyLib.Algo.Point
) where
import MyLib.Types
import MyLib.Functions
import MyLib.Algo.Line
import MyLib.Algo.Point

发生的情况是,当您将这样的模块放入导出列表时,您导出了您的模块知道的所有符号。

您可以确定导出该模块的哪一部分,例如:

module ExampleLib
(module Data.Maybe
) where
import Data.Maybe (fromJust)

以上只是从 Data.Maybe 中重新导出 fromJust,而不是整个 Data.Maybe 模块。

关于haskell - 使用 Haskell 一次导入整个模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29182479/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com