[MLton] mlb integration
Matthew Fluet
fluet@cs.cornell.edu
Tue, 27 Jul 2004 17:07:06 -0400 (EDT)
I think all of the major hurdles with .mlbs are out of the way. Here are
the few outstanding issues:
1) documentation:
The formalism is mostly done. I'd like to say something intelligent
on the treatment of infix status of identifiers. I've got to bring
the grammar up to speed with the implementation, including some derived
forms.
A "working programmer" treatment still needs to be written.
2) basis library:
I've provided basis{,-2002,-2002-strict,-1999,-none}.mlb which are
mostly derived from the appropriate build and bind files. I've
reworked things a little to avoid some spurious unused warnings. So,
for the most part, the behavior is consistent with that of HEAD.
With the rebindEquals annotation, the _basis_done declaration is only
serving to fix the MLtonFFI structure. It may be worth migrating this
declaration into an annotation.
In any case, all of the basis*.mlb files pull in build.mlb, which
suffices to install the top-level suffix and handler. However, an
.mlb file that doesn't pull in any basis will raise the uninstalled
error (at runtime).
3) SML/NJ MLton:
Still no "pre-parse/elaborate" of the basis library with SML/NJ. It
ought not be too difficult, but the behavior will necessarily be a
little funny with respect to -disable-ann, -warn-unused, etc.
However, I've got everything working and I'd like to give everyone the
chance to preview it. When I get the documentation into a slightly better
situation, I'm planning to commit things on a CVS branch.