Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Haskell中的包、模块和导入_Haskell - Fatal编程技术网

Haskell中的包、模块和导入

Haskell中的包、模块和导入,haskell,Haskell,我是哈斯克尔的新手。有人能解释一下Haskell中的代码组织是如何工作的吗?到目前为止,我已经在一个大的长文件中编写了所有内容,并测试了来自GHCi的代码。我想开始编写测试并将代码重构为逻辑单元。在很多地方都有关于如何做到这一点的零零碎碎的介绍,但没有全面的介绍 请解释包、模块和import语句是如何工作的,然后告诉我如何使用它们将代码组织到一个更大的测试驱动项目中。这里是一个介绍Haskell模块的文章,来自“为了更好地学习Haskell!”: 我将一个包称为Haskell软件最小的可交付单

我是哈斯克尔的新手。有人能解释一下Haskell中的代码组织是如何工作的吗?到目前为止,我已经在一个大的长文件中编写了所有内容,并测试了来自GHCi的代码。我想开始编写测试并将代码重构为逻辑单元。在很多地方都有关于如何做到这一点的零零碎碎的介绍,但没有全面的介绍


请解释包、模块和import语句是如何工作的,然后告诉我如何使用它们将代码组织到一个更大的测试驱动项目中。

这里是一个介绍Haskell模块的文章,来自“为了更好地学习Haskell!”:

我将一个包称为Haskell软件最小的可交付单元。对大多数人来说,只要说“包裹就是一切”

如果您要发布一个可执行文件,我不会担心将您的项目分解成多个包,直到您进入第二个项目,并且希望重用第一个项目中的模块