Back to index
Installation
Backing up your databases
Please backup your databases before installing LispMe. It's very
unlikely that LispMe destroys other databases and it never happened
in any test, but better safe than sorry...
Deleting older versions
Please delete any older versions of LispMe with the Memory application
before installing V2.8. The DB format has changed and a crash is
possible when LispMe finds an earlier version of its memory dump, though
LispMe now employs a heap check to recognize old databases.
Choosing versions
Starting with V2.4, only PalmOS2 and later are supported and only
one executable LispMe.prc is included in the
distribution. Sorry, but there's no LispMe for PalmOS1 anymore. The
reasons for this are:
- I wanted to include floating point numbers and the FP support in V1.0
is positively braindead. Including gcc's FP library would fatten LispMe's
code, but OS2 includes decent IEEE FP routines (not for I/O, these are
still braindead) and supports shared libraries. So using the ROM FP code
for basic operations and the freely available
MathLib
for transcendental functions induced minimal overhead for FP in LispMe.
- The ever-increasing memory needs of newer LispMe versions can't be
fulfilled by PalmOS1 anymore. Believe me, I tried, but it wasn't usable
anymore...
- Last but not least: Scrollbar for output field
There's no special version for the Palm III, instead LispMe checks the OS
version and uses additional resources (especially twice the stack space)
when it recognizes a Palm III.
So it's easy: If you're running PalmOS1, forget it, if
you're running PalmOS2 or later, just install LispMe.prc.
Later OS additions like color should be handled properly by LispMe.
I'm currently not planning to abandon V2.0 support, as LispMe doesn't
critically need 3.0 features.
LispMe supports transcendental
functions like atan. However,
LispMe does not implement these functions, but uses a standard Pilot
library called
MathLib
for this purpose. LispMe will work
without MathLib, but you can't use transcendental functions without it.
MathLib is included in this package for your convenience. So if you
already installed MathLib or decide to dispense with it, go to the next
section. Otherwise install MathLib.prc.
To create dialogs for LispMe, there're
several possibilities. To create resources
directly on your Pilot, you can install RsrcEdit.prc.
In any case you should install GUIdemo.prc in the gui
subdirectory. This file contains the unified resources of the 4
User interface Sample programs.
Installing Parentheses Hack
You have to install HackMaster to use Parentheses Hack. You probably
already installed it, but if not, go
here to get it.
Parentheses Hack simplifies entering of LispMe programs, but isn't
really necessary for LispMe to work. For details see
here.
Just use your favorite installation tool to install ParHack.prc
and activate it via HackMaster. Don't forget to deactivate Parentheses
Hack in HackMaster before installing a new version!
LispMe expects all memos to be loaded in the MemoPad category LispMe.
If this is the first time you install LispMe, you should create a MemoPad
category LispMe (case does matter) in your desktop MemoPad.
Import the file samples.csv into this category (unselect the
private field in the import dialog), even if you already installed
an earlier version of LispMe, since some demos have changed. If you modified
earlier demos, you have to carefully mix your changes with the new demos.
Alternatively, you can use the install-memo tool from the
Pilot Link suite to
transfer each .txt file in the sample directory.
Invoke it with
install-memo -c LispMe port samples/*.txt
The new or changed sample programs are
- ; Standard library
- ; GUI demo
- ; Calculator
If you've been using LispMe 2.4 or ealier, the startup
dialog will be unfamiliar to you,
but LispMe supports multiple sessions
now, so you have to create a new session and give it a name first.
See here how to create, modify and
delete sessions.
You should change the session's memory preferences. Select
Memory Sizes
according to these guidelines:
- The sizes you select directly affect the size of the database
LispMe uses.
- The default memory sizes are much too low for some demos to
load. To load the standard library
you need at least 8k. Some other demos require even more.
- If you don't need floating point, leave the setting at its minimum
(8 bytes)
- Set the atom size to the maximum you'll probably need (atoms aren't
garbage collected)
- The heap size almost doesn't affect performance. 4 times collecting
a 32k heap is about the same as 32 times collecting a 4k heap.
(Unless your code struggles along the maximum size and forces a
garbage collection every few machine steps)
- The output size doesn't affect performance,
- Selecting a big heap size sometimes makes trouble in tight memory
situations.
See here for
tips dealing with this situation.
- PalmOS3 is much more stable when changing memory sizes.
That's it!
Have a look at the demos and have fun with LispMe!
Removing LispMe
Are you sure you really want to do this? OK, removing LispMe from your Pilot
involves two steps:
- Remove all starter icons. The easiest way to do this is starting Lispme,
going to the sessions dialog and
uncheck all checkboxes in the column labeled Icon
- Removing LispMe itself in the standard app launcher. All session
datbases will be deleted, too.
If you omitted the first step, that's no problem, just delete each starter
application with the launcher.