Concurrent Clean : CleanJ : GenCompress
GenCompressは、もともとメモリを消費しがちなモジュールだったようです。
Start = test [1 .. 100] where test x = case uncompress (compress x) of Nothing -> False Just y -> x === y
というテストがcleanjでStackOverflowになっていたのですが、「test [1 .. 1000]」にしてやると、HeapとStackを拡張してやらないと、cleanでも実行完了できないようになり、「test [1 .. 2000]」にしてやると、Javaのデフォルトスタックサイズである 512KB にスタックを拡張(加えて、最大Heapサイズを 4MB に拡張)してやっても、StackOverflowになりました。
ということで、サイズを小さくして再実行したところ、今度はテストを通るようになりました。