[MLton] Extending the SML Basis library (Library project)

Stephen Weeks sweeks at sweeks.com
Tue Oct 10 12:31:42 PDT 2006


> Perhaps the first things that we could do is to start a library that
> provides some (minor) extensions to the basis library.
...
> I think that the basis library is a valuable library and it doesn't
> make sense to throw it away.  In particular, there is a book
> describing the basis library and people just learning SML are likely
> to spend time learning the basis library.  IMO, it makes sense to
> build on that knowledge.

A (mostly) compatible extension of the basis library seems useful to
me.  The basis library is big, well documented, widely used, and will
not be replaced any time soon.  My earlier comments were not meant to
discourage work on such an extension.  That being said, I think there
are enough problems with the basis library and that we have learned a
lot in the decade since the basis library was basically frozen.  MLton
has also shown that some design decisions in the basis library aimed
at performace (e.g all the MONO stuff) are unnecessary, and only add
complexity.

So, I think that it also makes sense to embark on a completely new
library, intended to be used standalone, without the basis, and
without worrying about any kind of consistency or compatibility with
the basis.  It will take time to get there, but not as long as you may
think.  The library that we use to develop MLton, while not as
well-documented as the basis, already covers a lot of ground, and some
subset could serve as a starting point.  (There are things I would do
differently -- the MLton library is also more than a decade old, and
suffers from it.)

> So, if a library like this seems worth having, it could go into
> 
>   mltonlib/extended-basis/unstable .

Seems reasonable to me.



More information about the MLton mailing list