9

私はHaskellと関数型プログラミングが初めてで、機能するプログラムがありますが、数秒後にスタックがオーバーフローします。私の質問は、ここから何をすべきかということです。少なくともそれが発生した場所のヒントを取得したり、スタックなどを印刷したりするにはどうすればよいですか?

:trace を使用して ghci で実行すると、プログラムが非常に遅くなるため、スタック オーバーフローは発生しません。ますます多くのメモリを消費するrunhaskellでも発生しません。ghc でコンパイルして実行した場合にのみエラーが発生します。

4

3 に答える 3

1

プロファイリングに関する一般的なガイドラインについては、 http://book.realworldhaskell.org/read/profiling-and-optimization.htmlを参照してください。

于 2013-08-28T19:54:18.733 に答える