

[なぜこのコードはスペースリークしますか？](https://ja.stackoverflow.com/q/36399/754)
を見ていて、次の疑問が生じました。

  * Haskell におけるメモリリークはどうやったらデバッグできるのか

というのも、上記のケースでは、プログラムの構造がシンプルであったため、目確認でも問題の箇所を特定することができますが、プログラム構造が複雑になった時には、実質これは不可能になると考えられます。

## 質問

haskell のコードでメモリリークをデバッグするには、どのような方法がありますか？


CC BY-SA 3.0
2017-07-16T07:32:54.173
36413
2017-07-16T08:05:44.213
754
question
haskell
haskell のメモリリークはどうやったらデバッグできる？


GHCのヒーププロファイリング機能を使いましょう。  
下記のリンクを参考にどうぞ。

  * <http://itpro.nikkeibp.co.jp/article/COLUMN/20110308/358081/>
  * <http://www.kotha.net/ghcguide_ja/latest/profiling.html>
  * <https://medium.com/@maoe/ghc%E3%83%92%E3%83%BC%E3%83%97%E3%83%97%E3%83%AD%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AA%E3%83%B3%E3%82%B0%E3%81%AE%E6%89%8B%E5%BC%95%E3%81%8D-md-bb8d180230f6>

なお、stackを利用している場合は、 `stack build --profile` と、 `--profile` オプションを使用すると楽ちんです。


CC BY-SA 3.0
2017-07-16T08:05:44.213
36414
2017-07-16T08:05:44.213
8007
36413
answer