Staapl command line compiler

I've added a standard command line interface to the compiler. It is
accessible as:
mzscheme -p zwizwa/staapl/staaplc -- <arg> ...
The default language environment is pic18. It is a simple frontend
for a couple of scheme functions, and best explained by quoting it's
main routine, after command line argument processing.
(eval
`(begin
(require ,(base-language))
(forth-load/compile ,(filename))
(current-console '(,(device) ,(baud)))
(save-ihex ,(output-hex))
(save-dict ,(output-dict)))
(make-base-namespace))
Given a source file, it produces an Intel HEX file to upload to the
target, and a script which instantiates the dictionary (global symbol
table) and console information. The latter is only useful when the
target contains the monitor code.
I.e. to compile a file "foo.f" containing:
: foo 1 2 3 ;
: bar foo foo bar ;
Do this:
mzscheme -p zwizwa/staapl/staaplc -- foo.f
This produces the files foo.hex and foo.ss
It is possible to install a launcher called 'staaplc' by issuing the
following command:
mzscheme -p zwizwa/staapl/install
You probably need to do this using administrator priviliges. From
then on it's possible to use
staaplc <arg> ...