[MLton] MLton rules! (was: filedes = int)

Stephen Weeks MLton@mlton.org
Fri, 15 Jul 2005 20:58:53 -0700


> I just got my own 64-bit x86 machine, and I'm eager to help out in
> any way I can!

Great.  Watch this space (and the CVS).  Matthew and I are starting
work on the port and will discuss design and implementation on this
list.  Feedback is welcome.

> Maybe we could use a "steps to 64-bit" page on the Wiki. I can think of
> maybe a few things to start?
> 
>  * Make GC 64-bit (very hard? this should be broken into many steps?)

Yeah, this is a lot of the work.

>  * Fix x86 codegen to avoid 64-bit-invalid instructions (if any)

Easy.

>  * Make x86 codegen do 64-bit mode (not bad?)

It depends on how far you want to go.  Take advantage of new
instructions, new registers, put in native support where we currently
make FFI calls, ...

>  * Fix C codegen to work in 64-bit (hard?)

Trivial.  But only because before fixing either the x86 or C codegens
we need to fix MLton's internals so that the pointer size isn't
hardwired.  That will be some work.

> I've been wanting to test out some machine learning algorithms in MLton,
> and it would be nice to have full 64-bit support (our lab at CMU has
> 64-bit Opteron machines with 16 and 32 GB of RAM for large datasets).

Wow, 32GB.  I had only had up to 16GB in mind (for playing various
bit-shifting pointer tricks).  Probably just have to eat having 64-bit
pointers in that case.