Hi Mark,
I didn't know you had a Palm Pilot. What a cool machine!
If we're talking about a cross-compiler (which, I think, is what the
Caml Light port is) all we have to do is port the runtime system.
I see three ways to proceed:
1) Hack on the gofc code a little.
If we just dust off gofc a little (ie don't try to add new Haskell
features), this might be pretty straightforward?
(Wild guess based on looking at gofc a few years back.)
2) Hack on gofc a lot.
Change it to use bytecodes on the assumption that bytecodes
are significantly more concise.
3) Port the new GHC-Hugs runtime system to the Pilot.
The big disadvantage of this is that the rts doesn't work with Hugs yet!
(but it's getting close)
The big advantage is that the new rts is supposed to be able to cope
with segmented memory - each segment is a different generation.
And then we need some kind of foreign function interface.
The new foreign_import/foreign_export declarations look like the way to go.
Of course, all this is just "shower-ware" (ie things I think about while
in the shower, waiting for a bus, walking home, etc). I too have no
free time to actually do anything - except maybe scrawl a few notes
into my pilot.
(That said our funding is acquiring a robot-oriented slant so maybe
there'd be an excuse to port Hugs to an "embedded environment" - using
the pilot as a test bed, of course. :-))
Alastair