[MLton] MLton's adherence to the Definition of SML
Henry Cejtin
henry@sourcelight.com
Tue, 3 Aug 2004 11:28:32 -0500
I think that one point that would be useful (in cases where it can be done)
would be to have a method to convert from MLton with extensions to absolutely
straight SML. In this way you can think of the extensions as a mere input
convenience. I know that I have mentioned this before, but I think that it
is a useful thing for stuff like the .mlb files (where it is both more needed
and more do-able). From the point of view of a company, it means that you
can use MLton knowing that you can still use any SML back end, possibly just
using the translation program once (which removes the extensions).
Although I really dislike most of the SML/NJ language extensions, and agree
that the threshold must be very high for adding such things, not having them
does mean that people who have SML/NJ code (admittedly a small population)
can't just try it under MLton and be amazed at the speed improvement.
When I was working on Scheme-48, it was a real pain because they deliberately
made it so that char->integer and integer->char did NOT use ASCII codes, but
added some large offset. This definitely had the effect that porting
Scheme-48 code to other implementations was very easy, but made going the
other way a big pain. Not the best way to arrange things if you want more
people to use it.
Any way, none of this is a convincing argument for having more extensions to
me.
I think that the note from Stephen is a useful thing to have in the MLton
docs.