| When I looked at it a year ago or so, it was a return of one
| constructor in a sum.
| Looking at core, you can see several places where a function is called
| and that function always returns the same constructor, so the case
| analysis of the return value is not needed; it should be returned as
| an unboxed tuple instead
| I'll see if I can get a simple example to illustrate the problem.

That would be very helpful, thanks. Having a Trac ticket with a small reproducible test case, and a pointer to a larger example that illustrates its importance, would be great. Indeed, it is pervasive, or can you try the effect of performing the transformation by hand, and seeing if it makes a difference?

That doesn't guarantee that I, or anyone else, will get to it, but it makes it much much more likely!

And in the meantime, it documents a possible performance trap
for others who might not be able to track down the cause, or
even notice that they are shooting themselves in the foot.

Claus

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to