| News |
For the latest and most up-to-date news, also look at CMUCL Trac Wiki.
-read-only-space-size,
-static-space-size, -control-stack-size,
and -binding-stack-size have been addded to control
the size of the corresponding region. The default size of each is
unchanged.build.sh.
command #1
command #1, #2
command #1 & #2
command #1 and #2
then the given command is applied to the specified
tickets. Instead of the short-hand syntax above, you can also use
command ticket:1
command ticket:1, ticket:2
command ticket:1 & ticket:2
command ticket:1 and ticket:2
The available commands (not case-sensitive) are:
LOAD-TIME-VALUE.DOCUMENTATION no
longer signals an error.SAPs in ROOM.:STACK-CHECKING feature, but it didn't
actually prevent stack overflows from crashing lisp.LISP:LOAD-ALL-UNICODE-DATA to load all the unicode
information into core. This is useful for creating an executable
image that does not need unidata.bin.:CMUCL is now in *FEATURES*-unidata, to allow user to specify
the location and name of the unidata.bin file. This is used instead
of the default location.:IF-EXISTS
:NEW-VERSION no longer causes an error. COMPILE-FILE, the second return value is now non-nil if
there are style warnings. Previously, style warnings were
erroneously ignored.COMPILE-FILE, the :OUTPUT-FILE can
also be a stream. CMUCL was erroneously signaling an error..(OPEN f :DIRECTION :IO :IF-DOES-NOT-EXIST NIL) no
longer signals an error if the file f does not exist.
It returns NIL now.SQRT
calls because KERNEL:%SQRT was not defined on x86
with SSE2. This is fixed now.#\latin_small_letter_a. This is fixed
in this version.EXT::DESCRIBE-EXTERNAL-FORMAT was not exported.TRACE was erroneously allowing encapsulation when
tracing local flet/labels functions. This doesn't actually trace
anything. An error is now signaled in this case. If you are sure,
you can specify :ENCAPSULATE NIL to disable
encapsulation.
UNINTERN no longer removes the wrong symbol. UNINTERN would
remove the symbol when inherited from another package although it
should not.
DEFSTRUCT allows multiple keyword constructors as required by the spec..
SUBSEQ with an end index less than the start index sometimes
crashes CMUCL. Now, signal an error if the boudns are not
valid.
REALPART and IMAGPART no longer incorrectly returns 0
instead of the correct part of a complex number in some
situations.build.sh was accidenally loading the site-init file, but it
shouldn't. XLIB::GET-BEST-AUTHORIZATION will now return authorization data
if the protocol is :local, if the xauth file contains just
"localhost/unix:0". Previously, no authorization data was
returned because GET-BEST-AUTHORIZATION was looking for the
hostname.FORMAT signals an warning if ~:; is used inside ~:[.SET-SYSTEM-EXTERNAL-FORMAT was not actually setting the filename
encoding if given.REALPART and IMAGPART has
been fixed in the 2010-11 snapshot. A patch is provided now to fix
this issue in the 20b release. Installation
instructions are available.
COMPILE-FILE accepts a
:DECODING-ERROR argument that indicates how to handle
decoding errors when reading the file.RUN-PROGRAM accepts :EXTERNAL-FORMAT
parameter to specify the external format for streams that are
created.READ-CHAR signals errors on non-character
streams. READ-BYTE signals errors on character
streams. This is a change from previous versions. However, both
will work if the stream is a binary-text-stream.REALPART and IMAGPARG no longer
returns 0 instead of the correct part of a complex number in some
situations. CMUCL 20b has been released. For information on the changes, we refer the reader to the 20b release notes.
CMUCL 20b prelease 2 has been released, in preparation for the upcoming 20b release. Therefore there will not be a 2010-09 snapshot.
SIGCONTEXT-FLOAT-REGISTER returned the wrong
value for single-floats. Easily noticead when tracing a function
with single-float arguments.
FILE-POSITION returns the correct value for UTF16
and UTF32 when there is a BOM (byte-order mark) at the
beginning of the file.
CMUCL 20b prelease 1 has been released, in preparation for the upcoming 20b release. Therefore there will not be a 2010-08 snapshot.
Error handling has been added to external formats. Previously, all external formats would silently replace bad encodings with a suitable replacement character. Now, the user can specify how the errors are handled by using the :DECODING-ERROR and :ENCODING-ERROR parameters to OPEN. The default is the previous behavior.
For decoding-error, a character, symbol, or function can be given. If a character, then that character is used as the replacement character. For a symbol or function, it must be a function of 3 arguments: a message string, the offending octet (or nil), and the number of octets read in the encoding. If the function returns, it must be the codepoint of the desired replacement.
For encoding-error, a character, symbol, or function can be given. If a character, then that character is used as the replacement character. For a symbol or function, it must be a function of 2 arguments: a message string and the offending codepoint. If the function returns, it must be the codepoint of the desired replacement.
(require :asdf) or (require :defsystem) to
load these.
-help has been added. This prints
out a brief summary of the available command line switches and
exists. You may also use --help.
Experimental support for static arrays has been added. These are allocated in foreign (malloc) space and are never moved by GC. They are, however, properly garbage collected. To create an array, use MAKE-ARRAY with :ALLOCATION :MALLOC. Only arrays of character; 8, 16, and 32-bit integers (signed or unsigned); single and double floats; and complex single and double floats are supported.
Also see older news: