ViewVC logotype

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

Parent Directory Parent Directory | Revision Log Revision Log

Revision 1.21 - (show annotations)
Sun Nov 4 01:37:06 2007 UTC (6 years, 5 months ago) by rtoy
Branch: MAIN
CVS Tags: snapshot-2007-11
Changes since 1.20: +3 -0 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.
43 - Preliminary support for external formats. Currently only
44 iso8859-1 and utf-8 are supported. Utf-8 support is limited
45 since CMUCL only has 8-bit characters.
47 * ANSI compliance fixes:
48 - BOA constructors with &AUX variables are handled better now.
49 - SHADOW accepts characters now.
50 - Default initargs are now passed correctly to initialize-instance
51 and shared-initialize.
53 * Bugfixes:
54 - Floating-point traps are now handled on ppc. Previously, no
55 traps were signalled and SET-FLOATING-POINT-MODES did nothing.
56 - FILE-POSITION no longer returns negative values for mapped
57 file-simple-stream's.
58 - Potential Version numbers that start with a leading 0 are no
59 longer treated as version numbers. Hence, "foo.~1~" has name
60 "foo", type nil, and version 1, but "foo.~01~" has type "~01~"
61 and version :NEWEST.
62 - A bug in type derivation for EXPT has been fixed. (expt x y)
63 for x of type (double-float (0d0) 1d0) and y of type
64 (double-float (0d0)) now returns (or (member 0d0) (double-float
65 (0d0) 1d0)) instead of (double-float 0d0 1d0), i.e., -0d0 is not
66 in the range.
67 - On sparc, the decoding of a trapping FP instruction is correct
68 now. Previously the wrong instruction was decoded, which
69 produced the wrong operation and operands in the arithmetic
70 error handler.
71 - Fix issue with UNIX:UNIX-MMAP handling of "large" addresses that
72 appeared to be negative numbers.
74 o Converting negative rationals to double-double-float's doesn't
75 produce wrong answers anymore.
76 o Conversion of bignums to double-double-floats preserves more
77 bits of the bignum now. This allows for read/print consistency
78 for this particular case. (The general case is still broken.)
79 o (float <negative bignum> 1w0) no longer returns a positive
80 result.
81 o Some issues with creation of DOUBLE-DOUBLE-FLOAT and (COMPLEX
82 DOUBLE-DOUBLE-FLOAT) have been fixed on sparc, ppc, and x86.
83 These seem to work, except there appears to be some bugs on x86
84 when compiling at speed 3 and safety 0.
85 o (INTEGER-DECODE-FLOAT <double-double-float>) was sometimes
86 returning the wrong integer value because the two components had
87 the wrong sign.
88 o Some issues with debugger printing out DOUBLE-DOUBLE-FLOATs and
89 (COMPLEX DOUBLE-DOUBLE-FLOAT)'s have been fixed.
90 o CLOS now recognizes that (COMPLEX DOUBLE-DOUBLE-FLOAT) is a
91 valid built-in class instead of a random object.
92 o Branch cuts for ASIN and ATANH for double-double-float's
93 should match the branches for double-float's.
94 o ATAN2 should correctly handle signed double-double-float
95 zeroes.
96 o FASL files containing -0w0 are now converted to -0w0 instead
97 of 0w0.
98 o SIN and TAN return -0w0 when the argument is -0w0.
99 Previously, they returned 0w0.
100 o Signed zeroes are handled better for addition, subtraction,
101 and multiplication. That is, the correct signed zero is
102 returned now.
103 o Overflow in addition, multiplication, and division returns
104 infinity if traps are disabled.
105 o EQL supports DOUBLE-DOUBLE-FLOAT's now.
106 o The printer and reader should now be consistent for
107 double-double-floats.
108 o Conversion of bignums and ratios to double-double-floats
109 should be more accurate.
110 o Double-double-float's should have print/read consistency now.
111 - The assembler for ppc had some arguments for some instructions
112 in the wrong order, producing the wrong effect.
113 - When making displaced arrays, the element types are checked to
114 see if they are type equivalent. If not, an error is signaled.
115 - The reader for #= and ## has been enhanced to be much faster for
116 cases with a large number of shared objects. However, it is also
117 somewhat slower for simple cases.
118 - #p"..." now has a namestring and is treated as a pathname with
119 name ".." and type "".
120 - #p"..a" erroneously had directory (:relative). This has been
121 fixed so that directory = nil, name = ".", and type = "a".
122 - Compiling code using SIGNUM no longer causes a compiler error.
123 The defoptimizer for SIGNUM was missing a case for
124 double-double-float.
125 - MAPHASH no longer causes a type-error when the mapping function
126 calls (setf gethash) on the same table.
127 - NOTINLINE declarations are honored for local functions even if
128 they only have only one use. Previously, these would be inlined
129 anyway. This allows tracing of such functions.
130 - TRACE and UNTRACE should now work as expected for local
131 labels/flet functions. Untracing should work. Redefining a
132 function should automatically retrace the local functions if
133 they were traced previously.
135 * Trac Tickets:
136 - #8 fixed so logs of bignums and ratios that won't fit into a
137 float can be computed, instead of signalling an error.
138 - #9 fixed. An error is generated if the number of days doesn't
139 match the number of days in the given month.
140 - #10 fixed. ROUND should now return correct answers for floats
141 bigger than most-positive-fixnum.
142 - #11 fixed. EQL handles double-double-float's correctly now.
143 - #1 fixed. prin1 and ~E should produce the same results.
144 - #12 fixed. (format t "~10,1,2,0,'*,,'DE" 1d-6) prints "0.1D-05"
145 now.
147 * Other changes:
148 - UNIX:UNIX-ERRNO accesses the thread errno value instead of the
149 global errno value.
151 * Improvements to the PCL implementation of CLOS:
152 - Forward-referenced classes are allowed.
154 * Changes to rebuilding procedure:
156 This release is not binary compatible with code compiled using CMUCL
157 19d; you will need to recompile FASL files.
159 See <URL:http://www.cons.org/cmucl/> for download information,
160 guidelines on reporting bugs, and mailing list details.
163 We hope you enjoy using this release of CMUCL!

  ViewVC Help
Powered by ViewVC 1.1.5