[MLton] upcoming public release
Stephen Weeks
MLton@mlton.org
Tue, 2 Nov 2004 13:45:01 -0800
> > > * Caching preprocessing of the basis. Matthew, where are you on this?
> >
> > I gave it a little more thought, and it is probably more difficult than I
> > originally thought. But I'll try to write up what I think might work and
> > where the problems lie.
>
> I don't think this should happen with this release.
Agreed.
> 2) mlton-compile isn't "resumable". Consider adding the following to
> main.fun:
...
> What this essentially does is dump the world after a compile, and the
> dumped world is ready to start a new compile. This would seem to be the
> best way to accumulate some state between successive compiles. However,
> I get:
>
> [fluet@lion temp 11]% mlton -dump-world world1 z.sml
> [fluet@lion temp 12]% mlton @MLton load-world world1.mlton -- z.sml
> bool has no info property
>
> This won't be a trivial task to eliminate this sort of thing.
I agree that eliminating such problems would be hard. This approach
would also have negative performance impact by causing the compiler to
keep around stuff that would otherwise be dead.
I think it would be simpler to save the world during elaboration,
since that is where resumption needs to occur. This is what I
suggested back in August
http://www.mlton.org/pipermail/mlton/2004-August/016224.html
There were some other problems with the idea that have since been
solved. But I think the main idea still makes sense, and is a better
way to go than saving the state after compilation is done.