/[cmucl]/src/general-info/release-19e.txt
ViewVC logotype

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.17 - (show annotations)
Fri Sep 28 17:24:15 2007 UTC (6 years, 6 months ago) by rtoy
Branch: MAIN
Changes since 1.16: +6 -0 lines
File MIME type: text/plain
Update from logs.
1 ========================== C M U C L 19 e =============================
2
3 [--- WORK IN PROGRESS --- DO NOT DISTRIBUTE ---]
4
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.
8
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.
18
19 New in this release:
20
21 * Supported system:
22 - Support for Mac OS X/Intel has been added.
23
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
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.
49
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.
70 - DOUBLE-DOUBLE-FLOAT fixes:
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".
114 - Untracing of flet/labels functions now work.
115 - Compiling code using SIGNUM no longer causes a compiler error.
116 The defoptimizer for SIGNUM was missing a case for
117 double-double-float.
118 - MAPHASH no longer causes a type-error when the mapping function
119 calls (setf gethash) on the same table.
120
121 * Trac Tickets:
122 - #8 fixed so logs of bignums and ratios that won't fit into a
123 float can be computed, instead of signalling an error.
124 - #9 fixed. An error is generated if the number of days doesn't
125 match the number of days in the given month.
126 - #10 fixed. ROUND should now return correct answers for floats
127 bigger than most-positive-fixnum.
128 - #11 fixed. EQL handles double-double-float's correctly now.
129
130 * Other changes:
131 - UNIX:UNIX-ERRNO accesses the thread errno value instead of the
132 global errno value.
133
134 * Improvements to the PCL implementation of CLOS:
135 - Forward-referenced classes are allowed.
136
137 * Changes to rebuilding procedure:
138
139 This release is not binary compatible with code compiled using CMUCL
140 19d; you will need to recompile FASL files.
141
142 See <URL:http://www.cons.org/cmucl/> for download information,
143 guidelines on reporting bugs, and mailing list details.
144
145
146 We hope you enjoy using this release of CMUCL!
147

  ViewVC Help
Powered by ViewVC 1.1.5