[MLton] cvs commit: world no longer contains a preprocessed basis library

Stephen Weeks MLton@mlton.org
Wed, 10 Dec 2003 13:50:22 -0800


> Doesn't using promises cause all uses to have the test to see if it
> was forced copied to it (assuming inlining)?  Sounds like that could
> be a problem.

Agreed.

> I agree that the non-semantics-preserving code removal is bad, but I
> think that file-level won't be great.  Partly it is because
> structures encourage one to make `files' a bit larger.  I.e., with
> file-level `dead' code elimination, any structure would either be
> completely included or missing, right?

Right.

> That can't quite be correct or else all the basis would be there.

We're not using file-level on the basis right now.  But I guess we
never could, because we do need the Basis2002 structure (whether we
export it or not) because matching it against BASIS_2002 is how we get
the right sharing for the basis.

> Would it just imply that any structure not absent would all be there
> except possibly for sub-structures?

This sounds like some intermediate kind of dead-code analysis between
declaration-level and file-level.