Now that ghc 4.08 has a time profiler, I've been improving a program I wrote over the last year. However now the GC time dominates the execution time (>60%). I can see that my program is not being lazy, but I have no idea why. How can I use profiling (or any other means) to determine where my program is not being sufficiently lazy? Are there papers on such things I could read? Sengan