Cabal とは Haskell のパッケージマネージャーで、 Java の Gradle や、JavaScript の npm に相当するプログラムです。
Cabal は通常は GHCup などを使って、GHC などと同時にインストールします。
久しぶりに cabal をつかうときは cabal update
しておきましょう。
以下のコマンドを実行することで、Cabal の my-project という名前のプロジェクトを作成できます。
mkdir my-project cd my-project cabal init
途中でいくつかの質問を聞かれますが、 Author name や Maintener email address は適切に入力してください。 他は、すべてデフォルトで問題ないでしょう。 とりあえず、テンプレートプログラムができているので、ビルドします。
cabal build
次のコマンドで実行します。
cabal run my-project
あるいは
cabal run exes
プログラム(デフォルトは app/Main.hs
)の中身とともに
my-project.cabal というファイルに必要な設定を書いていきます。
cabal init
のときにデフォルトを選んだ場合は、
.cabal ファイルにコメントが入っているはずなので、
どこに何を書くか、大体わかります。
特に build-depends:
のあとに、
依存するライブラリー名をコンマで区切って記述します。
プログラムに実行時引数を渡すときは、次のようにします。
cabal run my-project -- runtime arguments
あるいは
cabal run exes -- runtime arguments