如何在Haskell应用程序中固定依赖项

Luc*_*aio 5 haskell functional-programming cabal

我现在正在Haskell中编写一个todo.sh,以更好地理解IO monads的工作原理,并且我将使用cmdArgs来解析输入,就像在Python中使用argparse一样.

我的问题是,我如何固定cmdArgs的依赖关系,如pip的requirements.txt?

Django==1.5.1
South==0.7.6
Run Code Online (Sandbox Code Playgroud)

而且,可以在Hackage中分发我的包吗?

Dan*_*her 6

使用文件中的build-depends字段.cabal

build-depends:
    cmdargs == 0.10.3
Run Code Online (Sandbox Code Playgroud)

但是指定一个确切的版本通常不是最好的主意,所以

build-depends:
    cmdargs >= 0.8 && < 0.11
Run Code Online (Sandbox Code Playgroud)

指定一系列可容许的版本.

而且,可以在Hackage中分发我的包吗?

如果你知道它对任何人都没有用,那就不是了.

换句话说,是的,确定没关系.你需要一个关于Hackage的帐户,但这可能需要一些时间才能获得.