LispMe Manual
Ever wanted to carry a lisp machine in your shirt pocket? Now this is possible
with the LispMe Lisp system for the Pilot PDA... so much for marketing, which
isn't really necessary, as LispMe is Free Software published under
the GNU Public License. Look
here for an overview of LispMe's features.
Table of Contents
Reference manual | User Manual | Libraries | Developer infos
|
---|
|
|
|
|
This is the final version of LispMe, there is no further development. Sadly,
PalmOS is dead, RIP.
- Minor fixes
- Named let
- do rebinds instead of assigning doc
For details, see modification history.
LispMe is a Scheme compiler and runtime system running on the
Pilot PDA.
It is mainly intended to have a tool for quickly trying ideas
and algorithms, but you can write dialog-based applications, too.
Features included:
- Full-conforming Scheme semantics (static scoping, first-class closures,
tail recursion, continuations ...)
- mark/sweep garbage collection
- integrated compiler
- symbols, integers (including bigints), lists, booleans, chars, strings, vectors
- double precision IEEE-754 floating point for real and complex
arithmetic including transcendental functions
- delayed expressions
- quasiquote, macros and eval
- online help and statistics
- graphics and full user interface support
- standard Scheme ports to access memos, DOCs, VFS files, sockets, and RS232
- syntax-aware editing via Parentheses Hack
- multiple workspaces/sessions
- full source code available
- native interface for C functions and types
Features omitted:
- engines
- dynamic/fluid binding
- rational numeric type
- a debugger
For the top level, loading of sources etc. LispMe uses a unique concept not
found in other similar systems but fitting (IMHO) very good to the
Pilot's "flavor".
LispMe can use both memos and DOC files as source format, so all your code is
automatically backed up with hotsync and you can import/export source code
like any other text with your desktop PC.
All LispMe memory is held in a database, so switching to other applications
and restarting LispMe again is possible without destroying the current image,
even during an evaluation.
LispMe is released under the GNU Public License and
comes with absolutely no warranty.
I take no responsibility for any damage this program may cause to your
Pilot or your databases stored on your Pilot. You should backup your
Pilot databases before installing LispMe.
LispMe has been tested thoroughly on the Poser emulator with debug ROMs,
on my old Palm IIIc running PalmOS3.5 3.5, my new Tungsten T3 under PalmOS 5.2.1,
and several other devices and different software/hack configurations and
seems to works fine. Here I want to thank all beta testers for their
great support.
MathLib is a free shared library that can be used by any OS 2.0 Pilot
program that needs IEEE 754 double precision math functions. It's
distributed under the terms of the GNU General Public License, and
is freely available with full source code and documentation at the
MathLib
Information web page. It's not
a part of LispMe, and you're not paying anything for its use; a copy is
simply included in this archive for your convenience.
Parentheses Hack is freeware! Why charging fees for a simple little
hack that I wrote in one afternoon?
To use Parentheses Hack, you need to install HackMaster on your Pilot.
You can get it here.
Please note that HackMaster is shareware, so you should register it.
An alternative to HackMaster is
X-Master,
which is freeware.
- Greg Hewgill
for CoPilot
- Thomas Johler
for porting Pilot development tools and CoPilot to OS/2. Check out
his Pilot Class Library.
- Henning Nitschke for giving me the start with Pilot programming
- Hallvard Trætteberg for
many suggestions and code improvements.
- All other people who sent comments and bug reports.
They helped getting LispMe grown up ;-)
When sending bug reports, please
include source memos, expression evaluated and information about your
configuration (OS version, active hacks)
You can reach me by