Archives

Creative Commons License
This blog is licensed under a Creative Commons License.

Ready Lisp

Ready Lisp is a binding together of several popular Common Lisp packages especially for Mac OS X, including: Aquamacs, SBCL and SLIME. Once downloaded, you’ll have a single application bundle which you can double-click – and find yourself in a fully configured Common Lisp REPL.

It’s ideal for OS X users who want to try out the beauty of Common Lisp with a minimum of hassle. It could also be used by teachers to give their Mac students a free, complete Common Lisp environment to take home with them.

Requirements

The current version of Ready Lisp is 20090130 and requires Mac OS X 10.5 (Leopard).

It includes the following component software versions:

Aquamacs1.6
SBCL1.0.24
SLIME2009-01-23
`CL-FAD`0.6.2
`CL-PPCRE`2.0.1
`LOCAL-TIME`0.9.3
`SERIES`2.2.10
CL HyperSpec7.0
`paredit.el`21
`redshank.el`  1
`cldoc.el`1.16


Download

Ready Lisp is distributed as a disk image that’s approximately 73 megabytes in size.

Getting started

Just download the disk image, copy the application bundle that’s inside to your “Applications” folder, and double-click on Ready Lisp.app. You should find yourself in a Common Lisp REPL within moments.

Things to be aware of

Using asdf-install

If you use asdf-install and choose a “system-wide” installation, the installed package will end up inside your Application bundle. This works fine only if you don’t move your application bundle to another directory. In that case, all the symbolic links which will be broken. Because of this, I recommend installing any new packages into your home directory instead.

Features

Runs on Emacs

Ready Lisp uses Aquamacs (version 1.6) as the base platform for providing a rich Common Lisp editing experience.

The latest free software

Bundles the latest versions of SBCL (1.0.24) and SLIME (2009-01-23).

Universal binary

The application bundle is a fully universal binary, and runs on PowerPC and 32-bit Intel processors.

Note: There is no port of SBCL to 64-bit PowerPC. On G5 systems, it will run SBCL at 32-bit.

Complete documentation

Info documentation for the Common Lisp pieces is now bundled in, including:

  • Common Lisp HyperSpec
  • SBCL manual
  • SLIME manual
  • ASDF documentation

Just type C-h i and look for them in your documentation index. Also, when editing Common Lisp files, you can type C-h f to instantly access the HyperSpec index. In Emacs Lisp files, C-h f will get you help on Emacs Lisp functions.

There is also HTML and PDF versions of all documentation in:

  • Ready Lisp.app/Contents/Resources/html
  • Ready Lisp.app/Contents/Resources/doc

Use the Source!

The full source code for SBCL is integrated into your environment, meaning that if you type M-. (go to definition) and choose a function like mapcar, you’ll be able to instantly read the source code for SBCL’s implementation of mapcar.

Some libraries included

Several popular Common Lisp libraries come pre-bundled in the core image:

  • CL-FAD
  • LOCAL-TIME
  • SERIES
  • CL-PPCRE

I find these libraries very handy, but mainly I’m including them because the upcoming release of my CL-Ledger accounting tool depends on them, so it will work for Ready Lisp users out-of-the-box.

Verify your download

There is a GnuPG signature for the Ready Lisp disk image in the same directory you downloaded it from; just append .asc to the same filename to download it. To install my public key on your keyring (assuming you have GnuPG installed), use this command:

$ gpg --keyserver pgp.mit.edu --recv 0x824715A0

Once installed, you can verify the download using the following command:

$ gpg --verify ReadyLisp.dmg.asc

No TrackBacks

TrackBack URL: http://www.newartisans.com/mt/mt-tb.cgi/55

12 Comments

Do I have permission to include Ready Lisp on the complimentary Dvd given away with Macworld Italy magazine?

Sorry for posting here, but I couldn’t find any other way to contact you.

Thanks.

Ready Lisp is just a convenient repackaging of several free software projects. I think nothing in any of their licenses would preclude you from distributing it on any medium you like. I certainly have no objection.

The directory Contents/Resources/sbcl/site contains an .dmg of Aquamacs.

How does Ready Lisp deal with an existing Emacs .emacs file?

When I start Ready Lisp I get this error:

Can’t locate module: :SWANK-PACKAGE-FU [Condition of type SIMPLE-ERROR]

Trying to locate the source for the swank symbols in the debugger then does not work. It tries to get a date for files in /private/tmp/ready-lisp/slime/ which are not there…

I’ll remove that .dmg, I’m not sure how it crept in there…

As for existing .emacs, unfortunately it will read it and try to apply it to the Ready Lisp environment, which may not always work. In that case, I recommend you try and get SLIME working with your own Emacs setup, rather than using Ready Lisp.

The SWANK-PACKAGE-FU error is a known problem, which I’ll be working on today.

As for looking up swank symbols sending you to the wrong location, this is also a bug, which I’ll add to today’s list.

I keep getting an error “error in process filter: Invalid function: slime-with-output-end-mark” in a function that calls read-line.

Also, I note in the Redshank dropdown menu several items are greyed out (insert defpackage form, insert inpackage form) which I seem to remember having been ok in a recent previous version. I don’t know if this is symptomatic of anything.

Thanks for putting ready-lisp together!

I see that the minimal requirement is:

The current version of Ready Lisp is 20090130 and requires Mac OS X 10.5 (Leopard).

Is there a way to make this run in 10.4 Tiger? What from the packages requires Leopard or which version is suitable for 10.4?

Thanks

You are welcome to check out the sources and try to build Ready Lisp for 10.4. I don’t have access to a 10.4 machine, so there is no way for me to build it there. There are also some other differences you will have to get past before such a Ready Lisp would run (like the usage of the arch command when running multi-platform binaries).

http://github.com/jwiegley/ready-lisp/

I’ve succeeded in building a DMG. Git and texlive are required (you can easily build those from MacPorts). A little modification of the Makefile is also needed:

SBCL_BOOTSTRAP_VER = 1.0.2 # instead of 1.0.23

Now, I need some directions on how to solve the issue with the arch command.

Right now, I’m getting:

(swank:start-server “/tmp/slime.4032” :coding-system “utf-8-unix”) *error: /usr/bin/arch takes no arguments

Process inferior-lisp exited abnormally with code 255

Yep, that’s the heart of the problem right now. The “arch” command is different between 10.4 and 10.5, and I never had 10.4 around to know how to use both.

Very cool, works fine, thank you!

I’m trying to connect to a swank server running on debian linux and I get a version mismatch warning after doing M-x slime-connect.

The swank version is 2009-05-24 while the slime version is 2009-01-23. Do you know how I can update the slime version being used by ReadyLisp?

Same problem as Stanley’s (back in February)…

(print 12) ; prints 12 but REPL reports “error in process filter: Invalid function: slime-with-output-end-mark”

(This could be a slime bug, hence not sure this is the appropriate place to report this.)

Thanks for ReadyLisp.

Alex

Leave a comment

About this Archive

Find recent content on the main index or look in the archives to find all content.

Recent Comments

  • yoman: “Barfin”? “Slurping”? “Slime” “Hunchentoot” ??? What in the T.F. world read more
  • Bjorn Tipling: Why would you add instructions for installing an editor when read more
  • Mark Aufflick: sudo port install sbcl +threads If you previously installed sbcl read more
  • Alexander Lehmann: Thank. You. So. Much. – Clisp caused a lot of read more
  • Vetle: Btw, to get support for threading in SBCL, you have read more
  • ifade: I tried the same and get the same answer, but read more
  • Martial Boniou: Hi, I tried to install slime with MacPorts and I read more
OpenID accepted here Learn more about OpenID
Powered by Movable Type 4.261