私は現在 Stack を使用してプロジェクトを構築していますが、これには合計で約 80 個のモジュールと 13,000 行のコードがあります。現在、型ファイルの小さな変更にコンパイルに約 3 分かかりますが、これは容認できません。これにより、スタック ghci を介してコードを迅速にテストできなくなります。また、ピアとのペア プログラミングや専門家とのコンサルティングなど、多くの作業が大幅に遅くなります。
コンパイルに時間がかかる理由と、それを高速化するために何ができるかを理解したいと思います。コンパイル時間をプロファイリングする方法はありますか?
さらに、遅いのがスタックか ghc かをどのように判断できますか?
-O0 の設定については知っていますが、これはコンパイル時間の助けにはならないようです。また、TemplateHaskell と Typeclass の解決には時間がかかることも知っています。これらにかかる時間をより適切に解決する方法はありますか?
注: GHCで Speed up compilation を見たことがありますが、それは 2013 年のものであり、hdevtools は現在、私のセットアップでは機能しません。