From: Luke Gorrie
Subject: SLIME 1.0-alpha released
Date: 
Message-ID: <lh8ye4a8bz.fsf@dodo.bluetail.com>
Hello!

We've just released version 1.0-alpha of SLIME. This has all the
features that we want for the 1.0 release, but it's a preliminary
release so that we can get some final feedback and wider testing
before applying the 1.0 stamp.

We can now happily recommend SLIME to all the Emacs-using Lisp hackers
of the world, at least for CMUCL, SBCL, OpenMCL, LispWorks, AllegroCL,
CLISP, and ABCL. SLIME has been under heavy development for almost a
year and has been used for Real Work during most of that time. It has
matured into a rock'n'roll Emacs mode.

You can download the code and user manual from our home page:
  http://www.common-lisp.net/project/slime/
Or of course just check it out from CVS.

Please send feedback to our mailing list, which is readily accessible
via NNTP on server news.gmane.org as group gmane.lisp.slime.devel.

The release notes are included here:

* 1.0 alpha (June 2004)

This preview release of SLIME is a precursor for an upcoming 1.0
release. We're planning to use our "alpha period" to introduce SLIME
to more users, flush out bugs, and hear some final feedback that we
can consider for the 1.0 release.

We're tentatively planning for our alpha period to last until around
the end of July, then to be followed by a beta period until late
August when we make the finished 1.0 release. We're only interested in
adding or changing features during the alpha period, so if you want to
change something please try to get your patch applied before the end
of July.

Security note: SLIME has Lisp open a one-use TCP listen socket for
Emacs to connect to for setting up communication. With all Lisps
except CLISP and ABCL this socket is bound to the loopback interface
and thus inaccessible to remote hosts. Be aware that if an attacker
connected to this server port before Emacs then he could have the Lisp
process execute arbitrary code.

** Supported Lisp implementations

Below is a list of the Lisp implementations that we support and their
associated caveats.

Note that some Lisp systems have received more development attention
because they're popular with the currently active SLIME developers,
while others have only smaller user communities so far. The support
for a particular Lisp is primarily written and improved by its own
users, and it's good for your karma to improve the backend for your
favourite Lisp implementation.

*** CMU Common Lisp

We support CMUCL version 18e and higher. The overall support is very
mature.

The cross-reference commands are based on the CMUCL XREF
package. You'll need to setup XREF information recording to use those
commands, and in current CMUCLs this is slightly awkward.

The :sigio communication style conflicts with certain C libraries,
e.g. libSDL.  You'll need to switch to :fd-handler in this case.
:sigio may also not work well on Solaris.

On FreeBSD or Irix may get errors like "NIL is not of type HOST-ENTRY"
or "Error binding socket to port 0: Cannot assign requested address".
The only known workaround at the moment is to remove the :host
argument in CREATE-SOCKET in swank-cmucl.lisp.

*** Steel Bank Common Lisp

We support SBCL version 0.8.12 and higher. The support is very mature.

An "SBCL exclusive" feature is reference-conditions. Some SBCL
conditions include a slot of documentation references (e.g. to the
Hyperspec and SBCL manual) and the SLIME debugger is able to format
these as hyperlinks.

For the (v)iew-source command in the debugger to find the exact source
expression corresponding to a stack frame, the code must have been
compiled with at least (optimize (debug 2)). Otherwise the results
will only have top-level-form precision.

The XREF commands are not available.

*** OpenMCL

We support OpenMCL 0.14.2p1, however our debugger can't invoke
restarts in this version due to a bug in
INVOKE-RESTART-INTERACTIVELY. This bug has been fixed in OpenMCL's CVS
repository and we recommend upgrading to either the CVS copy or a
later release if available.

The OpenMCL support is quite mature.

The XREF commands are not available.

*** LispWorks

We support LispWorks version 4.1 and higher. The support is quite
mature.

On OS X you'll have to remove the :address argument in CREATE-SOCKET
in swank-lispworks.lisp.  This is a LispWorks bug.

*** Allegro CL

We support Allegro Common Lisp version 5.0 and higher. The support is
quite complete, though it hasn't yet been used as heavily as the Lisps
listed above.

*** CLISP

We support CLISP version 2.32 or newer.  You'll need a version with
socket support; this may require to start CLISP with "clisp -K full".

The backtrace for compiled functions is not very informative.
Interpreted code is usually easer to debug.

M-. (find-definition) only works if the fasl file is in the same
directory as the source file.

*** Armed Bear Common Lisp

We have new and experimental support for the latest CVS version of
ABCL.