如何构建Haskell项目?

HHC*_*HHC 31 testing tdd haskell unit-testing

我目前正在尝试使用测试驱动开发方法来执行Haskell项目.在Java中,我们可以创建一个包含src和bin文件夹的结构良好的项目,然后有用于使用JUnit进行单元测试的主文件夹和测试文件夹.我只是想知道在Haskell中有一个标准的方法来获得这样的结构吗?一个文件夹,用于源二进制文件夹,在源文件夹中有两个文件夹,一个用于测试一个主源文件夹.

Dav*_*rak 24

我的引用总是Haskell项目的结构如何编写一个Haskell程序,该程序列出了社区或多或少似乎遵循的一些默认值.到目前为止,它对我来说效果很好,但我的项目还不是很大.

Haskell项目的结构中的建议听起来类似于您在帖子中概述的内容,只需进行一些小修改,例如测试文件夹与src文件夹位于同一目录中.

编辑:

cabal init将为您生成最小金额,包括具有相关依赖关系的cabal文件,如果您有任何至少包含导入的文件.这是一个很好的开始,但只是你要找的一部分.

理想情况下,随着项目的增长,cabal文件和目录层次结构将自动保持最新,我不知道任何公开的工具会做到这一点.这是我可能有一天的名单,因为我确信这对许多其他人而言.

-odir并且-hidir可以与ghc一起使用,将*.o和*.hi文件放在不同的目录中.你可以阅读更多GHC用户指南对单独统计部)

EDIT2:

其他相关/重叠职位:


Jam*_*hon 3

现代的答案是使用Haskell 工具堆栈。这将使用合理的默认值为您构建项目。