| News |
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: