[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Pearl Lisp -- PD or Not?

The short answer is that Pearl Lisp is NOT public domain. 

The long answer is appended below, and will appear in the Lisp FAQ posting
(possibly in an abbreviated format). 


When Apple Computer acquired Coral Software in January 1989, they
re-released Coral's Allegro Common Lisp and its optional modules as
Macintosh Allegro Common Lisp (now just Macintosh Common Lisp).
Coral's other product, Pearl Lisp, was discontinued at that time.
Pearl Lisp provides a subset of the functionality of MACL 1.3 and is
not even fully CLtL1-compatible (e.g., the implementation of defstruct is

Despite rumors to the contrary, Pearl Lisp is not and never was public
domain. Nevertheless, Pearl Lisp and its documentation were placed in
the "Moof:Goodies:Pearl Lisp" folder on the first pressing of "Phil
and Dave's Excellent CD", the precursor to the current Apple
Developer's CD-ROM series.  Apple removed Pearl from later versions of
the developer CD-ROM distribution because of complaints from other
Lisp vendors. If you own a copy of Pearl Lisp or a copy of this
CD-ROM, you can make it runnable under System 7 with some slight
modifications using ResEdit.  To repeat, Pearl Lisp is NOT public
domain, so you must own a copy to use it.

To make it runnable, one needs to use ResEdit to make changes to the
BNDL and FREF resources so that it will connect to its icons properly.
This will make it respond to double-clicks in the normal manner and
make it be properly linked to its files. The detailed instructions
are as follows:

1. Copy the Pearl Lisp folder to a writable medium.

2. Open the file "Pearl" with ResEdit.

3. Select the PERL resource type and choose Cut from the Edit menu.
   (You will need this in step 6, so you should paste it into a temporary
   file if you want to Copy or Cut anything else before then.)

4. Find the "FASL" FREF resource and change the file type in it from
   "FASL" to "PSFL".

5. Edit the BNDL resource 128 and change the owner from "CCL" to

6. Choose Paste from the Edit menu to put the earlier PERL resource
   back in.  ResEdit created a new empty one when you changed the owner,
   but you want the original.  Click Yes in the dialog about unique id's;
   you want the original id, 0, for the PERL resource.

7. Delete the entire CCL resource type, if it exists.

8. Save all these changes and rebuild your desktop.  Pearl and the
   associated .Lisp and .Fasl files should magically regain their icons
   and work properly.

The object is to change the owner to "PERL" and the fasl file type to
"PSFL". But when you change the owner, ResEdit creates a new resource
with type the same as the owner, and id 0.  This resource contains the
default string to use in the GetInfo box.  In this case, the PERL
resource that came with Pearl has Apple's copyright notice, which
should be retained.

Something else you might want to do: Edit the mask for ICN# 128.  This
controls which pixels on the screen respond to mouse clicks.  The most
natural thing is for one to double-click on the pearl, but
unfortunately, the mask has a lot of white pixels within the pearl, so
it's hard to hit.  Fill in the pearl in the mask; in fact, you might
even fill in the whole square, although most people seem to just fill
in the outline of their icons.

Most of the instructions for modifying Pearl using ResEdit were
provided a few years ago by Paul Snively. 

After you've made these changes, it will run under System 7 if you
turn off 32-bit addressing. It seems to bomb on a Quadra.

If you need a more powerful Lisp or one that is compatible with the
standard for Common Lisp, consider purchasing Macintosh Common Lisp.