X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=NEWS;h=896c78a26d25a23f0120028013033244666dc0b4;hb=959057baab99d4328fc386aee3fcc812f5fcb3ed;hp=49cc158b8b0e40f006c9c69316e637736a131930;hpb=b4dcc81361b084a1ed9e3212ae4abbb174720780;p=sbcl.git diff --git a/NEWS b/NEWS index 49cc158..896c78a 100644 --- a/NEWS +++ b/NEWS @@ -739,6 +739,12 @@ changes in sbcl-0.6.13 relative to sbcl-0.6.12: * a port to the Compaq/DEC Alpha CPU, thanks to Dan Barlow * Martin Atzmueller ported Tim Moore's marvellous CMU CL DISASSEMBLE patch, so that DISASSEMBLE output is much nicer. +* The code in the SB-PROFILE package now seems reasonably stable. + I still haven't decided what the final interface should look like + (I'd like PROFILE to interact cleanly with TRACE, since both + facilities use function encapsulation) but if you have a need + for profiling now, you can probably use it successfully with + the current CMU-CL-style interface. * Pathnames and *DEFAULT-DIRECTORY-DEFAULTS* are much more ANSI-compliant, thanks to various fixes and tests from Dan Barlow. Also, at Dan Barlow's suggestion, TRUENAME on a dangling symbolic @@ -751,17 +757,38 @@ changes in sbcl-0.6.13 relative to sbcl-0.6.12: is now a supported extension again, since the consensus on sbcl-devel was that it can be useful for ordinary development work, not just for debugging SBCL itself. +* The default for SB-EXT:*DERIVE-FUNCTION-TYPES* has changed to + NIL, i.e. ANSI behavior, i.e. the compiler now recognizes + that currently-defined functions might be redefined later with + different return types. * Hash tables can be printed readably, as inspired by CMU CL code of Eric Marsden and SBCL code of Martin Atzmueller. * better error handling in CLOS method combination, thanks to Martin Atzmueller porting Pierre Mai's CMU CL patches * more overflow fixes for >16Mbyte I/O buffers +* A bug in READ has been fixed, so that now a single Ctrl-D + character suffices to cause end-of-file on character streams. + In particular, now you only need one Ctrl-D at the command + line (not two) to exit SBCL. +* fixed bug 26: ARRAY-DISPLACEMENT now returns (VALUES NIL 0) for + undisplaced arrays. * fixed bug 107 (reported as a CMU CL bug by Erik Naggum on comp.lang.lisp 2001-06-11): (WRITE #*101 :RADIX T :BASE 36) now does the right thing. * The implementation of some type tests, especially for CONDITION types, is now tidier and maybe faster, due to CMU CL code originally by Douglas Crosher, ported by Martin Atzmueller. +* Some math functions have been fixed, and there are new + optimizers for deriving the types of COERCE and ARRAY-ELEMENT-TYPE, + thanks to Raymond Toy's work on CMU CL, ported by Martin Atzmueller. +* (There are also some new optimizers in contrib/*-extras.lisp. Those + aren't built into sbcl-0.6.13, but are a sneak preview of what's + likely to be built into sbcl-0.7.0.) +* A bug in COPY-READTABLE was fixed. (Joao Cachopo's patch to CMU + CL, ported to SBCL by Martin Atzmueller) +* DESCRIBE now gives more information in some cases. (Pierre Mai's + patch to CMU CL, ported to SBCL by Martin Atzmueller) +* Martin Atzmueller and Bill Newman fixed some bugs in INSPECT. * There's a new slam.sh hack to shorten the edit/compile/debug cycle for low-level changes to SBCL itself, and a new :SB-AFTER-XC-CORE target feature to control the generation of @@ -785,13 +812,65 @@ changes in sbcl-0.6.13 relative to sbcl-0.6.12: the byte fasl file version is now equal to the ordinary fasl file version. +changes in sbcl-0.7.0 relative to sbcl-0.6.13: +* incompatible change: The default fasl file extension has changed + to ".fasl", for all architectures. (No longer ".x86f" and ".axpf".) +* There are new compiler optimizations for various functions: FIND, + POSITION, FIND-IF, POSITION-IF, FILL, COERCE, TRUNCATE, FLOOR, and + CEILING. Mostly these should be transparent, but there's one + potentially-annoying problem (bug 117): when the compiler inline + expands the FIND/POSITION family of functions and does type + analysis on the result, it can find control paths which have + type mismatches, and when it can't prove that they're not taken, + it will issue WARNINGs about the type mismatches. It's not clear + how to make the compiler smart enough to fix this in general, but + a workaround is given in the entry for 117 in the BUGS file. +* The doc/cmucl/ directory, containing old CMU CL documentation, + is no longer part of the base system. The files which used to + be in the doc/cmucl/ directory are now available as + . +* The default value of *BYTES-CONSED-BETWEEN-GCS* has been + doubled, to 4 million. (If your application spends a lot of time + GCing and you have a lot of RAM, you might want to experiment with + increasing it even more.) +* The EVAL and EVAL-WHEN code has been largely rewritten, and the + old CMU CL "IR1 interpreter" has gone away. The new interpreter + is probably slower and harder to debug than the old one, but + it's much simpler (several thousand lines of source code simpler) + and considerably more ANSI-compliant. Bugs + ?? IR1-3 and + ?? IR1-3a + have been fixed. Since the code is newer, there might still be + some new bugs (though not as many as before Martin Atzmueller's + fixes:-). But hopefully any remaining bugs will be simpler, less + fundamental, and more fixable then the bugs in the old IR1 + interpreter code. +* PPRINT-LOGICAL-BLOCK now copies the *PRINT-LINES* value on entry + and uses that copy, rather than the current dynamic value, when + it's trying to decide whether to truncate output . Thus e.g. + (let ((*print-lines* 50)) + (pprint-logical-block (stream nil) + (dotimes (i 10) + (let ((*print-lines* 8)) + (print (aref possiblybigthings i) stream))))) + should truncate the logical block only at 50 lines, instead of + often truncating it at 8 lines. +* :SB-CONSTRAIN-FLOAT-TYPE, :SB-PROPAGATE-FLOAT-TYPE, and + :SB-PROPAGATE-FUN-TYPE are no longer considered to be optional + features. Instead, the code that they used to control is always + built into the system. +* lots of tidying up internally: renaming things so that names are + more systematic and consistent, converting C macros to inline + functions, systematizing indentation +* The fasl file version number changed again, for any number of + good reasons. + planned incompatible changes in 0.7.x: * The debugger prompt sequence now goes "5]", "5[2]", "5[3]", etc. as you get deeper into recursive calls to the debugger command loop, instead of the old "5]", "5]]", "5]]]" sequence. (I was motivated to do this when squabbles between ILISP and SBCL left me very deeply nested in the debugger.) -* The fasl file extension may change, perhaps to ".fasl". * The default output representation for unprintable ASCII characters which, unlike e.g. #\Newline, don't have names defined in the ANSI Common Lisp standard, may change to their ASCII symbolic