我对Haskell很新。有人会解释代码组织在Haskell中的工作原理吗?到目前为止,我已将所有内容都写在一个很长的文件中,并测试了来自GHCi的代码。我想开始编写测试,将我的代码重构为逻辑单元。有很多地方关于如何在很多地方做到这一点,但没有什么全面的。
请解释包,模块和import语句的工作方式然后告诉我如何使用它们将代码组织到一个更大的测试驱动项目中。
答案 0 :(得分:5)
以下是Haskell模块的介绍,“了解你是一个很好的Haskell!”:
http://learnyouahaskell.com/modules
我会将包称为Haskell软件的最小可交付单元。对于大多数人来说,只需说“包就是Hackage上的东西”。
如果您要发送可执行文件,我不会担心在您进入第二个项目之前将项目分解为多个软件包,并希望重新使用第一个项目。