OS X - My new Lisp platform
Tuesday, December 7, 2004
I recently bought a 20-inch
iMac G5 and am still getting used to using this lovely machine. I
ostensibly bought it for my daughter; however, she lets me use it
sometimes too! :-)
Since IBM
is selling off it's PC division, there has been some
wild speculation that this might be a prelude to some sort of
IBM/Apple relationship. I don't think an acquisition will happen;
however, it's fun to fantasize about what might happen in any of
a number of different scenarios. But I won't do that here - I'll leave that
for others.
Meanwhile, back to my new G5. I've installed
Allegro CL,
CLISP,
CMUCL,
OpenMCL,
LispWorks,
and
SBCL on it. With the exception of LispWorks, I've configured the
other implementations to run under
Emacs 21.3 with
SLIME. With LispWorks (at least for the time being), I'm using the LispWorks IDE
since I'm using the LispWorks Personal version (which does not support the
creation of console versions of LispWorks which are needed for inferior-lisp
usage in Emacs). When I learn a bit more about
AppleScript, I'll create a startup script similar to my
Win32 script so that I can use LispWorks Personal in OS X with
Emacs/SLIME in the
same manner as I'm doing on Win32.
Here's a screen shot (you might need
to click on the image and zoom in on it in order to see it properly) of Emacs
loaded with a separate SLIME REPL for ACL, CLISP, CMUCL, OpenMCL, and SBCL
and with LispWorks running in it's own IDE.
![]()
ACL, CLISP and LispWorks are very similar to the Win32 versions (at least
after just some very cursory playing). CMUCL, SBCL and OpenMCL are new CL
implementation options
that I didn't have available on Win32, so I'm looking forward to
playing around with them on OS X. With the availability of so many
quality CL implementations on OS X, this has got to be one of the
best supported OSes for CL hackers today!
Since I'm a relative newbie to OS X and Unix-like OS'es, I'd
appreciate any suggestions/advice from people. For example, I installed all of the CL
implementations in ~/bin/ which doesn't seem to be what most people
do. Most people seem to install in /usr/local/ but you need admin
authority to install there and it's in the default path. Since I
often install different versions of the same CL implementation (or
"tweak" the installs) and
don't always want them in the default path, I usually like to
explicitly point to the CL implementation in my .emacs file rather
than default it in from the system path. I'd be
interested in hearing why other people prefer to install in
/usr/local/ - is it just for convenience or are there good reasons to
have the installs under the /usr/local/ directory?
Update: My apologies for the (original) huge jpg size :-(. I've replaced the
in-line image with a smaller one but you can click on it to get the
more detailed picture. Thanks
Zach for letting me know and for
sending me the smaller image! :-)

