
22 Mar
2007
22 Mar
'07
4:07 a.m.
| Although I have not looked into this much, My guess is it is an issue in | the simplifier, normally when something is examined with a case | statement, the simplification context sets its status to 'NoneOf []', | which means we know it is in WHNF, but we don't have any more info about | it. I would think that the solution would be to add the same annotation | in the simplifier to variables bound by pattern matching on strict data | types? Indeed! GHC already does this. That's why I am surprised that adding seq improves things. Adrian has helpfully sent a test case, but I have not examined it yet S