[MLton] cvs commit: fixed quadratic liveness for list constants
Henry Cejtin
henry@sourcelight.com
Wed, 30 Jun 2004 12:45:53 -0500
I remember that Blume defined some kind of infix reverse cons function
(although you would want it to be a constructor) so that one could write
[] ??? ... ??? z3 ??? z2 ??? z1
to evaluate to the list
[z1, z2, z3, ...]
with the args being evaluated in the efficient way.
I wonder how difficult it would be, and how often it would fire, to have an
optimization which would catch that there were no side effects so that the
order of evaluation could be reversed. The existance of exceptions makes it
a bit harder to trigger.