[MLton] mlb support

Stephen Weeks MLton@mlton.org
Wed, 30 Jun 2004 17:45:59 -0700

> Yes, but changing the elaboration doesn't require Makefile hackery to
> clean up after myself.  Also, there is the big complicated question of
> where those files are written, since within an .mlb, relative file names
> are supposed to be relative to the location of the .mlb.
> I can't imagine leaving showBasis in a .mlb library that I ship out the
> door.  Or even in something that I'm using on a regular basis.  So, if I
> need to go in and edit the .mlb files to print out a basis (and go back
> and edit them to turn it off), then I'm doing no more work to write up a
> quick little .mlb file that corresponds to exactly the basis I want to
> print out and running with -show-basis <file> on the new .mlb.
> And, I suspect that Henry's use is the common case. So, if I want to see
> the basis of some library, just compile the appropriate .mlb.

All good points.  I have no objection to keeping -show-basis as purely
a command-line switch.

> One remaining question is whether or not .mlb files should be elaborated
> in the "empty" annotation environment.  Doing so is certainly simpler, as
> there is no conflict that needs to be resolved for the same .mlb file
> being included under different annotations. 

I hadn't thought of this issue.  It does make things clearer to have
the scope of the annotations be lexically clear, and not descend into
other files.

I think that the defaults for the "empty" annotation environment used
to elaborate each mlb should be whatever is set on the command line.