Lie algebra cohomology and cellphones
Tuesday, November 6, 2007
The Windows CE port is now working again. I can bootstrap and run tests
successfully.
There are three main limitations:
- Memory usage is high because of the copying collector. I will implement mark/sweep/compact collection for the oldest generation soon.
- Network sockets and non-blocking I/O is not supported yet. I need to
finish off Doug’s
io.windows.ce
code for that to work. - Factor must be run from inside the command prompt. The command prompt is awkward to install and use. Eventually I will port the Factor UI to Windows CE, in some cut-down form, and you’ll get a nice listener instead.
You can download a binary package I threw together. It includes the command prompt, which might not be legal. To run it, you must follow these steps:
- Unzip the ZIP file on your phone; root directory is the easiest place, otherwise you’ll be typing full pathnames all the time (Windows CE doesn’t have a “current directory” concept).
- Run
pocketconsole.arm.cab
to install the console driver. - Open a registry editor such as
TRE, and change
the
HKEY_LOCAL_MACHINE\Drivers\Console\OutputTo
to the number0
. - Run
cmd.exe
. - In the command prompt, run
factor-ce
. - If you want, copy the
core
andextra
directories from the Factor 0.91 sources, so that you can load external modules.
Annoyingly error-prone and long-winded? You bet! Soon you’ll just be
able to double-click on factor-ce.exe
and it will start an UI
listener, but for now the command prompt is as good as it gets.
To help with code input on the small dinky cellphone keyboard, I loaded
some shortcut definitions. So now
you can write u tools.time
instead of USE: tools.time
, etc.
Now, where does Lie algebra
cohomology
come into this? Well, I tried running extra/koszul
on the phone, and
it works fine. This is probably one of the least practical things I have
ever done in my life, but it is a good way of testing whether a
non-trivial program can run.
Playing around with extra/koszul
and math stuff on the phone made me
wonder. A modern cell phone has a much higher resolution (not to mention
color) screen compared to a graphing calculator. Furthermore it has more
RAM and a faster CPU. For example, the TI Voyage
200
is rather bulky and only has 188K of user-available RAM. My phone has
more than 300 times that. The
TI-89
is pretty much the same but with a different form factor. The
calculators have an advantage when it comes to input, but perhaps
predictive completion, handwriting recognition and the iPhone multitouch
can narrow the gap there. A good CAS for cellphones and PDAs could cut
into HP and TI’s business…