ViewVC logotype

Contents of /src/general-info/release-19e.txt

Parent Directory Parent Directory | Revision Log Revision Log

Revision 1.16 - (show annotations)
Mon Sep 10 16:28:02 2007 UTC (6 years, 7 months ago) by rtoy
Branch: MAIN
Changes since 1.15: +5 -1 lines
File MIME type: text/plain
1 ========================== C M U C L 19 e =============================
5 The CMUCL project is pleased to announce the release of CMUCL 19e.
6 This is a major release which contains numerous enhancements and
7 bugfixes from the 19d release.
9 CMUCL is a free, high performance implementation of the Common Lisp
10 programming language which runs on most major Unix platforms. It
11 mainly conforms to the ANSI Common Lisp standard. CMUCL provides a
12 sophisticated native code compiler; a powerful foreign function
13 interface; an implementation of CLOS, the Common Lisp Object System,
14 which includes multimethods and a metaobject protocol; a source-level
15 debugger and code profiler; and an Emacs-like editor implemented in
16 Common Lisp. CMUCL is maintained by a team of volunteers collaborating
17 over the Internet, and is mostly in the public domain.
19 New in this release:
21 * Supported system:
22 - Support for Mac OS X/Intel has been added.
24 * Feature enhancements:
25 - Support for dynamic-extent added for ppc. However, it suffers
26 from the same problems with dynamic-extent as other platforms,
27 so it is disabled by default. Tests indicate that it does work
28 in simple situations.
29 - PARSE-TIME recognizes the format produced by C asctime/ctime.
30 (This change may break some other less commonly used patterns.)
31 - PARSE-TIME recognizes and discards any microseconds.
32 - PARSE-TIME checks that a specified day of the week matches the
33 actual day of the week given in the date. An error is signaled
34 if they are inconsistent.
35 - New option to SAVE-LISP allows creating executable Lisp images
36 that do not require a runtime loader.
37 Syntax: (save-lisp "filename" :executable t)
38 Currently supported on FreeBSD and Linux; work on a Solaris
39 version is underway.
40 Limitations: depends on files in "library:" to dump new
41 executable images.
42 - CMUCL's version of CLX has been replaced with telent CLX.
44 * ANSI compliance fixes:
45 - BOA constructors with &AUX variables are handled better now.
46 - SHADOW accepts characters now.
47 - Default initargs are now passed correctly to initialize-instance
48 and shared-initialize.
50 * Bugfixes:
51 - Floating-point traps are now handled on ppc. Previously, no
52 traps were signalled and SET-FLOATING-POINT-MODES did nothing.
53 - FILE-POSITION no longer returns negative values for mapped
54 file-simple-stream's.
55 - Potential Version numbers that start with a leading 0 are no
56 longer treated as version numbers. Hence, "foo.~1~" has name
57 "foo", type nil, and version 1, but "foo.~01~" has type "~01~"
58 and version :NEWEST.
59 - A bug in type derivation for EXPT has been fixed. (expt x y)
60 for x of type (double-float (0d0) 1d0) and y of type
61 (double-float (0d0)) now returns (or (member 0d0) (double-float
62 (0d0) 1d0)) instead of (double-float 0d0 1d0), i.e., -0d0 is not
63 in the range.
64 - On sparc, the decoding of a trapping FP instruction is correct
65 now. Previously the wrong instruction was decoded, which
66 produced the wrong operation and operands in the arithmetic
67 error handler.
68 - Fix issue with UNIX:UNIX-MMAP handling of "large" addresses that
69 appeared to be negative numbers.
71 o Converting negative rationals to double-double-float's doesn't
72 produce wrong answers anymore.
73 o Conversion of bignums to double-double-floats preserves more
74 bits of the bignum now. This allows for read/print consistency
75 for this particular case. (The general case is still broken.)
76 o (float <negative bignum> 1w0) no longer returns a positive
77 result.
78 o Some issues with creation of DOUBLE-DOUBLE-FLOAT and (COMPLEX
79 DOUBLE-DOUBLE-FLOAT) have been fixed on sparc, ppc, and x86.
80 These seem to work, except there appears to be some bugs on x86
81 when compiling at speed 3 and safety 0.
82 o (INTEGER-DECODE-FLOAT <double-double-float>) was sometimes
83 returning the wrong integer value because the two components had
84 the wrong sign.
85 o Some issues with debugger printing out DOUBLE-DOUBLE-FLOATs and
86 (COMPLEX DOUBLE-DOUBLE-FLOAT)'s have been fixed.
87 o CLOS now recognizes that (COMPLEX DOUBLE-DOUBLE-FLOAT) is a
88 valid built-in class instead of a random object.
89 o Branch cuts for ASIN and ATANH for double-double-float's
90 should match the branches for double-float's.
91 o ATAN2 should correctly handle signed double-double-float
92 zeroes.
93 o FASL files containing -0w0 are now converted to -0w0 instead
94 of 0w0.
95 o SIN and TAN return -0w0 when the argument is -0w0.
96 Previously, they returned 0w0.
97 o Signed zeroes are handled better for addition, subtraction,
98 and multiplication. That is, the correct signed zero is
99 returned now.
100 o Overflow in addition, multiplication, and division returns
101 infinity if traps are disabled.
102 o EQL supports DOUBLE-DOUBLE-FLOAT's now.
103 - The assembler for ppc had some arguments for some instructions
104 in the wrong order, producing the wrong effect.
105 - When making displaced arrays, the element types are checked to
106 see if they are type equivalent. If not, an error is signaled.
107 - The reader for #= and ## has been enhanced to be much faster for
108 cases with a large number of shared objects. However, it is also
109 somewhat slower for simple cases.
110 - #p"..." now has a namestring and is treated as a pathname with
111 name ".." and type "".
112 - #p"..a" erroneously had directory (:relative). This has been
113 fixed so that directory = nil, name = ".", and type = "a".
115 * Trac Tickets:
116 - #8 fixed so logs of bignums and ratios that won't fit into a
117 float can be computed, instead of signalling an error.
118 - #9 fixed. An error is generated if the number of days doesn't
119 match the number of days in the given month.
120 - #10 fixed. ROUND should now return correct answers for floats
121 bigger than most-positive-fixnum.
122 - #11 fixed. EQL handles double-double-float's correctly now.
124 * Other changes:
125 - UNIX:UNIX-ERRNO accesses the thread errno value instead of the
126 global errno value.
128 * Improvements to the PCL implementation of CLOS:
129 - Forward-referenced classes are allowed.
131 * Changes to rebuilding procedure:
133 This release is not binary compatible with code compiled using CMUCL
134 19d; you will need to recompile FASL files.
136 See <URL:http://www.cons.org/cmucl/> for download information,
137 guidelines on reporting bugs, and mailing list details.
140 We hope you enjoy using this release of CMUCL!

  ViewVC Help
Powered by ViewVC 1.1.5