Version 0.7.11 of SBCL has been released.
Besides the changes actually in the release (described in NEWS, below)
there are several things going on which haven't made it into the
released code. There are unmerged patches:
* Kevin Rosenberg's patch to extend the SBCL toplevel REPL with the
features of ACL (submitted late in December and not acted upon yet)
There are also several branched development versions of the system,
which I don't think I've mentioned in sbcl-announce, at least not
* Dan Barlow's threads branch (in sf.net CVS)
* Valtteri Vuorikoski's port to NetBSD/i386 (available for download
* Dave Richards' ongoing port to Windows (in his own CVS repository)
* Alexey Dejneka's compiler-cleanup branch (also in sf.net CVS)
The NetBSD port hasn't been merged into SBCL only because it relies on
patching NetBSD itself to work around the lack of POSIX signals in
the current version of NetBSD, which is a problem which should be fixed
soon (in NetBSD 1.6.1?). The holdups on the other variants are less
trivially described, but all at least increase the possibility that 2003
will be rather interesting.
from the NEWS file:
changes in sbcl-0.7.11 relative to sbcl-0.7.10:
* fixed bug 127: DEFSTRUCT now does not clobber old structure
accessors that are related by inheritance, as specified in the
:CONC-NAME section of the specification of DEFSTRUCT. (thanks to
* The compiler is now able to inline functions that were defined in
a complex lexical environment (e.g. inside a MACROLET).
* fixed bug in DESCRIBE, which now works on rank-0 arrays. (thanks
to Lutz Euler)
* Support for the upcoming FreeBSD-5.0 release has been included.
(thanks to Dag-Erling Smorgrav)
* fixed bug 219: DEFINE-COMPILER-MACRO no longer has compile-time
effect when it is not in a toplevel context.
* fixed bug 222: DEFMETHOD and SYMBOL-MACROLET interactions now
stand a better chance of being correct. (thanks to Gerd
* fixed bug in COERCE, which now signals an error on coercing a
rational to a bounded real type which excludes the expected
* The compiler is now able to derive types more accurately from the
COERCE and COMPILE functions.
* fixed bug 223: Functional binding is considered to be constant
only for symbols in the CL package.
* fixed bug 231: SETQ did not check the type of a variable being set
(reported by Robert E. Brown)
* A new optimization for MAKE-INSTANCE has been included, fixing
various bugs (including relating to :ALLOCATION :CLASS slots and
:DEFAULT-INITARGS over-eager evalueation). (thanks to Gerd
* fixed some LOOP bugs revealed by Paul Dietz' test suite:
** As required by ANSI, LOOP now disallows anonymous collection
clauses such as COLLECT I in conjunction with aggregate boolean
clauses such as THEREIS (= I 1);
** LOOP now signals an error when any variable is reused in the
same loop (including the potentially useful construct analogous
to WITH A = 1 WITH A = (1+ A);
** IT is only a special loop symbol within the first clause of a
conditional loop clause;
** LOOP with a typed iteration variable over a hashtable now
signals a type error iff it should.
* fixed some other bugs revealed by Paul Dietz' test suite:
** The CL:FILE-STREAM class is now defined. (I.e., we now have an
ANSI-compliant name for what was previously known as FD-STREAM.)
** In DEFSTRUCT, a bare :CONC-NAME (or a :CONC-NAME with no
argument) no longer signals an error.
** Likewise in DEFSTRUCT, :CONC-NAME NIL now respects the package
of the slot symbol, rather than using the current package
((:CONC-NAME "") continues to intern the slot's name in the
* incremented fasl file version number, because of the incompatible
change to the DEFSTRUCT-DESCRIPTION structure, and again because
of the new implementation of DEFINE-COMPILER-MACRO
William Harold Newman <william.newman@...>
"All rings of power are equal, but some rings of power are more equal
PGP key fingerprint 85 CE 1C BA 79 8D 51 8C B9 25 FB EE E0 C3 E5 7C