Tags give the ability to mark specific points in history as being important
-
sbcl_0_6_10
9a2bacfe · ·changes in sbcl-0.6.10 relative to sbcl-0.6.9: * A patch from Martin Atzmueller seems to have solved the SIGINT problem, and as far as we know, signal-handling now works cleanly. (If you find any new bugs, please report them!) * The system no longer defaults Lisp source file names to types ".l", ".cl", or ".lsp", but only to ".lisp". * The compiler no longer uses special default file extensions for byte-compiled code. (The ANSI definition of COMPILE-FILE-PATHNAME seems to expect a single default extension for all compiled code, and there's no compelling reason to try to stretch the standard to allow two different extensions.) Instead, byte-compiled files default to the same extension as native-compiled files. * Fasl file format version numbers have increased again, because a rearrangement of internal implementation packages made some dumped symbols in old fasl files unreadable in new cores. * DECLARE/DECLAIM/PROCLAIM logic is more nearly ANSI in general, with many fewer weird special cases. * Bug #17 (differing COMPILE-FILE behavior between logical and physical pathnames) has been fixed, and some related misbehavior too, thanks to a patch from Martin Atzmueller. * Bug #30 (reader problems) is gone, thanks to a CMU CL patch by Tim Moore, ported to SBCL by Martin Atzmueller. * Martin Atzmueller fixed several filesystem-related problems, including bug #36, in part by porting CMU CL patches, which were written in part by Paul Werkowski. * More compiler warnings in src/runtime/ are gone, thanks to more patches from Martin Atzmueller. * Martin Atzmueller pointed out that bug 37 was fixed by his patches some time ago.
-
sbcl_0_6_9
943f38e6 · ·changes in sbcl-0.6.9 relative to sbcl-0.6.8: * DESCRIBE now works on CONDITION objects. * The debugger now handles errors which arise when trying to print *DEBUG-CONDITION*, so that it's less likely to fall into infinite regress. * The build system now uses an additional file, customize-target-features.lisp, to allow local modifications to the target *FEATURES* list. (The point of this is that now I can set up a custom configuration, e.g. with :SB-SHOW debugging features enabled, without having to worry about propagating it into everyone's system when I do a "cvs update".) When no customize-target-features.lisp file exists, the target *FEATURES* list should be constructed the same way as before. * fixed bugs in DEFCONSTANT ANSI-compatibility: ** DEFCONSTANT now tests reassignments using EQL, not EQUAL, in order to warn about behavior which is undefined under the ANSI spec. Note: This is specified by ANSI, but it's not very popular with programmers. If it causes you problems, take a look at the new SB-INT:DEFCONSTANT-EQX macro in the SBCL sources for an example of a workaround which you might use to make portable ANSI-standard code which does what you want. ** DEFCONSTANT's implementation is now based on EVAL-WHEN instead of on pre-ANSI IR1 translation magic, so it does the ANSI-specified thing when it's used as a non-toplevel form. (This is required in order to implement the DEFCONSTANT-EQX macro.) ** (DEFCONSTANT X 1) (DEFVAR X) (SETF X 2) no longer "works". ** Unfortunately, non-toplevel DEFCONSTANT forms can still do some funny things, due to bugs in the implementation of EVAL-WHEN (bug #IR1-3). This probably won't be fixed until 0.7.x. (Fortunately, non-toplevel DEFCONSTANTs are uncommon.) * The core file version number and fasl file version number have been incremented, because the old noncompliant DEFCONSTANT behavior involved calling functions which no longer exist, and because I also took the opportunity to chop an unsupported slot out of the DEBUG-SOURCE structure. * fixed bug 1 (error handling before read-eval-print loop starts), and redid debugger restarts and related debugger commands somewhat while doing so: ** The QUIT debugger command is gone, since it did something rather different than the SB-EXT:QUIT command, and since it never worked properly outside the main toplevel read/eval/print loop. Invoking the new TOPLEVEL restart provides the same functionality. ** The GO debugger command is also gone, since you can just invoke the CONTINUE restart directly instead. ** The TOP debugger command is also gone, since it's redundant with the FRAME 0 command, and since it interfered with abbreviations for the TOPLEVEL restart. * The system now recovers better from non-PACKAGE values of the *PACKAGE* variable. * The system now understands compound CONS types (e.g. (CONS FIXNUM T)) as required by ANSI. (thanks to Douglas Crosher's CMU CL patches, with some porting work by Martin Atzmueller) * Martin Atzmueller reviewed the CMU CL mailing lists and came back with a boatload of patches which he ported to SBCL. Now that those have been applied, ** The system tries to make sure that its low-priority messages are prefixed by semicolons, to help people who like to use syntax highlighting in their ILISP buffer. (This patch was originally due to Raymond Toy.) ** The system now optimizes INTEGER-LENGTH better, thanks to more patches originally written by Raymond Toy. ** The compiler understands coercion between single-value and multiple-VALUES type expressions better, getting rid of some very weird behavior, thanks to patches originally by Robert MacLachlan and Douglas Crosher. ** The system understands ANSI-style non-KEYWORD &KEY arguments in lambda lists, thanks to a patch originally by Pierre Mai. ** The system no longer bogusly warns about "abbreviated type declarations". ** The compiler gets less confused by inlining and RETURN-FROM, thanks to some patches originally by Tim Moore. ** The system no longer hangs when dumping circular lists to fasl files, thanks to a patch originally from Douglas Crosher. * Martin Atzmueller also fixed ROOM, so that it no longer fails with an undefined function error. * gave up on fixing bug 3 (forbidden-by-ANSI warning for type mismatch in structure slot initforms) for now, documented workaround instead:-| * fixed bug 4 (no WARNING for DECLAIM FTYPE of slot accessor function) * fixed bug 5: added stubs for various Gray stream functions called in the not-a-CL:STREAM case, so that even when Gray streams aren't installed, at least appropriate type errors are generated * fixed bug 8: better reporting of various PROGRAM-ERRORs * fixed bug 9: IGNORE and IGNORABLE now work reasonably and more consistently in DEFMETHOD forms. * removed bug 21 from BUGS, since Martin Atzmueller points out that it doesn't seem to affect SBCL after all * The C runtime system now builds with better optimization and many fewer warnings, thanks to lots of cleanups by Martin Atzmueller. -
sbcl_0_6_8
6973177f · ·changes in sbcl-0.6.8 relative to sbcl-0.6.7: * The system is now under CVS at SourceForge (instead of the CVS repository on my home machine). * The new signal handling code has been tweaked to treat register contents as (UNSIGNED-BYTE 32), as the old CMU CL code did, instead of (SIGNED-BYTE 32), as the C header files have it. (Code downstream, e.g. in debug-int.lisp, has implicit dependencies on the unsignedness of integer representation of machine words, and that caused the system to bomb out with infinite regress when trying to recover from type errors involving signed values, e.g. (BUTLAST '(1 2 3) -1).) * (BUTLAST NIL) and (NBUTLAST NIL) now return NIL as they should. (This was one of the bugs Peter Van Eynde reported back in July.) * The system now uses code inspired by Colin Walters' O(N) implementation of MAP (from the cmucl-imp@cons.org mailing list, 2 September 2000) when it can't use a DEFTRANSFORM to inline the MAP operation, and there is more than one sequence argument to the MAP call (so that it can't just do ETYPECASE once and for all based on the type of the single sequence argument). (The old non-inline implementation of the general M-argument sequence-of-length-N case required O(M*N*N) time when any of the sequence arguments were LISTs.) * The QUIT :UNIX-CODE keyword argument has been renamed to QUIT :UNIX-STATUS. (The old name still works, but is deprecated.) * Raymond Wiker's patches to port RUN-PROGRAM from CMU CL to SBCL have been added. * Raymond Wiker's patches to port dynamic loading from Linux to FreeBSD have been added. * The BUGS file is now more nearly up to date, thanks in large part to Martin Atzmueller's review of it. * The debugger now flushes standard output streams before it begins its output ("debugger invoked" and so forth). * The core version number and fasl file version number have both been incremented, because of incompatible changes in the layout of static symbols. * FINISH-OUTPUT is now called more consistently on QUIT. (It used to not be called for a saved Lisp image.) * Martin Atzmueller's version of a patch to fix a compiler crash, as posted on sbcl-devel 13 September 2000, has been installed. * Instead of installing Martin Atzmueller's patch for the compiler transform for SUBSEQ, I deleted the compiler transform, and transforms for some similar consing operations. * A bug in signal handling which kept TRACE from working on OpenBSD has been fixed. * added enough DEFTRANSFORMs to allow (SXHASH 'FOO) to be optimized away by constant folding * The system now defines its address space constants in one place (in the Lisp sources), and propagates them automatically elsewhere (through GENESIS and the sbcl.h file). Therefore, patching the address map is less unnecessarily tedious and error-prone. The Lisp names of address space constants have also been systematized. * CVS tags like dollar-Header-dollar have been removed from the sources, because they have never saved me trouble and they've been source of trouble working with patches and other diff-related operations. * fixed the PROG1-vs.-PROGN bug in HANDLER-BIND (reported by ole.rohne@cern.ch on cmucl-help@cons.org 2000-10-25) -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-