Joe,
Have you tried any of the more powerful forms of heap-profiling,
beyond static tagging of producer/construction?
| My hypothesis is that 'deserialize' (the problematic function,
| called 'buildTree' in my earlier message) is building up
| a long chain of suspensions of the form
|
| snd . snd . snd . ... build
|
| that aren't getting reduced... not sure about this though.
If that were true, I expect an LDVU profile would show a growing lag
component, a construction profile for that component only would be full
of snd and (.), and a retainer profile would reveal `deserialize'
hanging onto all this stuff.
(These profiles are available in nhc, but I'm not sure what you
can get in hugs/ghc.)
Regards
Colin R