This release has improved documentation as well as programming
improvements. I've adapted from CMU CL the basic chapters of the user
manual, and updated the web site a little, so that it points to Dan
Barlow's libraries, reflects Raymond Wiker's new port to FreeBSD, and
Alas, Raymond Wiker's new port to FreeBSD hasn't been integrated into
this release. My FreeBSD box is still running the relatively ancient
3.3 release of FreeBSD, and I ran into some troubles getting the SBCL
port to work on it, and I didn't want to release something I couldn't
test. I've ordered a FreeBSD 4.0 CDROM which should arrive sometime
next week, and then I'll try again.
I used a slightly hacked homebrew version of Norman Walsh's modular
stylesheets for DocBook to convert the manual into HTML. I'd be
interested in pointers to better versions. In particular, I'd like
versions which support optionally putting SourceForge boilerplate on
every page (so that I can put the manual on the website) and which are
easier to navigate.
from the NEWS file:
changes in sbcl-0.6.4 relative to sbcl-0.6.3:
* There is now a partial SBCL user manual (with some new text and some
text cribbed from the CMU CL manual).
* The beginnings of a profiler have been added (starting with the
CMU CL profiler and simplifying and cleaning up). Eventually the
main interface should be through the TRACE macro, but for now,
it's still accessed through vaguely CMU-CL-style functions and macros
exported from the package SB-PROFILE.
* Some problems left over from porting CMU CL to the new
cross-compilation bootstrap process have been cleaned up:
** DISASSEMBLE now works. (There was a problem in using DEFMACRO
instead of SB!XC:DEFMACRO, compounded by an oversight on my
part when getting rid of the compiler *BACKEND* stuff.)
** The value of *NULL-TYPE* was screwed up, because it was
being initialized before the type system knew the final
definition of the 'NULL type. This screwed up several key
optimizations in the compiler, causing inefficiency in all sorts
of places. (I found it because I wanted to understand why
GET-INTERNAL-RUN-TIME was consing.)
* fixed a bug in DEFGENERIC which was causing it to overwrite preexisting
PROCLAIM FTYPE information. Unfortunately this broke binary
compatibility again, since now the forms output by DEFGENERIC
to refer to functions which didn't exist in 0.6.3.
* added declarations so that SB-PCL::USE-CACHING-DFUN-P
can use the new (as of 0.6.3) transform for SOME into MAP into
* changed (MOD 1000000) type declarations for Linux timeval.tv_usec slot
values to (INTEGER 0 1000000), so that the time code will no longer
occasionally get blown up by Linux returning 1000000 microseconds
* PRINT-UNREADABLE-OBJECT has been tweaked to make the spacing of
its output conform to the ANSI spec. (Alas, this makes its output
uglier in the :TYPE T :IDENTITY NIL case, but them's the breaks.)
* A full call to MAP NIL with a single sequence argument no longer conses.
* fixes to problems pointed out by Martin Atzmueller:
* The manual page no longer talks about multiprocessing as though
it were currently supported.
* The ILISP support patches have been removed from the distribution,
because as of version 5.10.1, ILISP now supports SBCL without us
having to maintain patches.
* added a modified version of Raymond Toy's recent CMU CL patch for
EQUALP comparison of HASH-TABLE
William Harold Newman <william.newman@...>
PGP key fingerprint 85 CE 1C BA 79 8D 51 8C B9 25 FB EE E0 C3 E5 7C