[MLton] mlb files and the ML Kit

Matthew Fluet fluet@cs.cornell.edu
Fri, 12 Mar 2004 09:49:50 -0500 (EST)


> >  4. The language should support binding of bases (e.g., with basis
> >     identifiers). In principle, augmenting the PM system with this
> >     feature allows for any acyclic dependency graph to be described.
>
> That sounds fine to me.  I didn't have it in my original proposal,
> since it seemed like using the file system to name bases was
> sufficient.  As you saw, it made it into my second proposal, which
> tried to do everything in a file-system independent manner.
>
> BTW, it was never resolved on the MLton list or in my mind which of
> those proposals was better (elaboration rules directly in terms of
> files or via expansion to some smaller file-system independent
> language).  I'd love to see some progress on the issue.

I don't see the practical need for basis-identifiers over using the
file-system to name bases.  (That is, I'm in favor of the former
proposal.)  What is the motivating example for basis-identifiers?

I know that Henry's argument is that it separates the scoping language
from the file-system.  But then we push files back into the language and
define them to macro expand to their contents.  What I don't see is where
this extra power buys you anything, and why that level of indirection is
worth it.  Where would you want to name a basis that it wouldn't make
sense to document that basis as a separate .mlb file?