Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.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,在开发或测试项目时,我通常需要执行一些重复的辅助任务。例如:下载一些数据、设置数据库、清理日志等。在Ruby land中,它们由rake处理,而其他语言则更喜欢make或其他东西(任务有时依赖于其他任务,因此我们可能偶尔需要一个任务来执行它所依赖的子任务) 那么,在Haskell项目中是否有一些常规的方法来组织这些任务? 我假设cabal可以用于此,但并不是所有这些辅助任务都是关于运行Haskell代码的:有时只是执行rm-r日志/*.log或使用wget或curl下载一些数据。让阴谋集团的测试

在开发或测试项目时,我通常需要执行一些重复的辅助任务。例如:下载一些数据、设置数据库、清理日志等。在Ruby land中,它们由
rake
处理,而其他语言则更喜欢
make
或其他东西(任务有时依赖于其他任务,因此我们可能偶尔需要一个任务来执行它所依赖的子任务)

那么,在Haskell项目中是否有一些常规的方法来组织这些任务?

我假设
cabal
可以用于此,但并不是所有这些辅助任务都是关于运行Haskell代码的:有时只是执行
rm-r日志/*.log
或使用
wget
curl
下载一些数据。让阴谋集团的
测试
目标依赖于其他阴谋集团目标,呃,运行Haskell代码中的shell脚本/命令,这有意义吗?(如果阴谋集团中可能有从属目标?)

或者,我可以使用
make
,但“一个普通的haskeller”(例如,“外部”项目贡献者)会觉得这很直观吗?我相信人们会先尝试
cabaltest
,然后才发现它需要先为测试设置数据库,然后运行整个其他任务链。人们会首先注意到一个
Makefile


我在Haskell项目中找不到任何处理这些辅助任务的方法。

据我所知,Haskell项目中没有事实上的标准工具


但最近我听说,一个用Haskell编写的一元构建系统。

注意,
make
通常不出现在Windows上。(但同样地,
wget
curl
或类似的都不是。)记住,并不是每个平台都是Unix。对于我的小项目,Shake看起来很重要,但在处理更大的项目时,我会记住它。我想我现在还是用make吧。谢谢你的提示!