ViewVC logotype

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

Parent Directory Parent Directory | Revision Log Revision Log

Revision 1.20 - (show annotations)
Fri Oct 19 02:25:20 2007 UTC (6 years, 6 months ago) by rtoy
Branch: MAIN
Changes since 1.19: +5 -1 lines
File MIME type: text/plain
Update from logs.
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 o The printer and reader should now be consistent for
104 double-double-floats.
105 o Conversion of bignums and ratios to double-double-floats
106 should be more accurate.
107 o Double-double-float's should have print/read consistency now.
108 - The assembler for ppc had some arguments for some instructions
109 in the wrong order, producing the wrong effect.
110 - When making displaced arrays, the element types are checked to
111 see if they are type equivalent. If not, an error is signaled.
112 - The reader for #= and ## has been enhanced to be much faster for
113 cases with a large number of shared objects. However, it is also
114 somewhat slower for simple cases.
115 - #p"..." now has a namestring and is treated as a pathname with
116 name ".." and type "".
117 - #p"..a" erroneously had directory (:relative). This has been
118 fixed so that directory = nil, name = ".", and type = "a".
119 - Compiling code using SIGNUM no longer causes a compiler error.
120 The defoptimizer for SIGNUM was missing a case for
121 double-double-float.
122 - MAPHASH no longer causes a type-error when the mapping function
123 calls (setf gethash) on the same table.
124 - NOTINLINE declarations are honored for local functions even if
125 they only have only one use. Previously, these would be inlined
126 anyway. This allows tracing of such functions.
127 - TRACE and UNTRACE should now work as expected for local
128 labels/flet functions. Untracing should work. Redefining a
129 function should automatically retrace the local functions if
130 they were traced previously.
132 * Trac Tickets:
133 - #8 fixed so logs of bignums and ratios that won't fit into a
134 float can be computed, instead of signalling an error.
135 - #9 fixed. An error is generated if the number of days doesn't
136 match the number of days in the given month.
137 - #10 fixed. ROUND should now return correct answers for floats
138 bigger than most-positive-fixnum.
139 - #11 fixed. EQL handles double-double-float's correctly now.
140 - #1 fixed. prin1 and ~E should produce the same results.
141 - #12 fixed. (format t "~10,1,2,0,'*,,'DE" 1d-6) prints "0.1D-05"
142 now.
144 * Other changes:
145 - UNIX:UNIX-ERRNO accesses the thread errno value instead of the
146 global errno value.
148 * Improvements to the PCL implementation of CLOS:
149 - Forward-referenced classes are allowed.
151 * Changes to rebuilding procedure:
153 This release is not binary compatible with code compiled using CMUCL
154 19d; you will need to recompile FASL files.
156 See <URL:http://www.cons.org/cmucl/> for download information,
157 guidelines on reporting bugs, and mailing list details.
160 We hope you enjoy using this release of CMUCL!

  ViewVC Help
Powered by ViewVC 1.1.5