local refs

Stephen Weeks MLton@sourcelight.com
Fri, 30 Nov 2001 16:15:01 -0800


> Here's how wc-input1 sped up:
...

Cool.  It looks like more refs (x_156, x_158) could be eliminated with
a subsequent pass.  Or maybe you could do a more precise analysis
(possibly combined with local flattening?) to catch them all on one
pass?  Actually, it looks to me like local flattening suffers from the
same weakness -- it won't flatten a tuple that is stored inside
another tuple, even if that other tuple is flattened.  To do so
requires a more complex analysis that does a dataflow analysis on the
entire type, not just the topmost level in the type.