ViewVC logotype

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

Parent Directory Parent Directory | Revision Log Revision Log

Revision 1.29 - (hide annotations)
Thu Feb 28 17:28:44 2008 UTC (6 years, 1 month ago) by rtoy
Branch: MAIN
CVS Tags: snapshot-2008-03
Changes since 1.28: +11 -2 lines
File MIME type: text/plain
Merge changes from 19e branch.
1 rtoy 1.1 ========================== C M U C L 19 e =============================
3     The CMUCL project is pleased to announce the release of CMUCL 19e.
4     This is a major release which contains numerous enhancements and
5     bugfixes from the 19d release.
7     CMUCL is a free, high performance implementation of the Common Lisp
8     programming language which runs on most major Unix platforms. It
9     mainly conforms to the ANSI Common Lisp standard. CMUCL provides a
10     sophisticated native code compiler; a powerful foreign function
11     interface; an implementation of CLOS, the Common Lisp Object System,
12     which includes multimethods and a metaobject protocol; a source-level
13     debugger and code profiler; and an Emacs-like editor implemented in
14     Common Lisp. CMUCL is maintained by a team of volunteers collaborating
15     over the Internet, and is mostly in the public domain.
17     New in this release:
19 rtoy 1.13 * Supported system:
20     - Support for Mac OS X/Intel has been added.
21 rtoy 1.1
22 rtoy 1.28 * Issues
23     - One some openSUSE systems, cmucl will fail to start because it
24     can't map enough memory. This might be caused be a memory limit
25     that is set too low. Use "ulimit -a" to see the limit on
26     virtual memory. This can be adjusted with "ulimit -v <N>"
27 rtoy 1.29 - Tracing on Mac OS X/Intel uses encapsulation, unlike other
28     platforms. This means tracing recursive functions may not show
29     the recursive calls. You can try setting
30     debug::*trace-encapsulate-default* to :default. Be warned that
31     under some conditions, tracing will cause an error such that you
32     can not get back to the repl and must terminate the process in
33     some other way.
34 rtoy 1.28
35 rtoy 1.1 * Feature enhancements:
36 rtoy 1.8 - Support for dynamic-extent added for ppc. However, it suffers
37     from the same problems with dynamic-extent as other platforms,
38     so it is disabled by default. Tests indicate that it does work
39     in simple situations.
40     - PARSE-TIME recognizes the format produced by C asctime/ctime.
41     (This change may break some other less commonly used patterns.)
42 rtoy 1.10 - PARSE-TIME recognizes and discards any microseconds.
43     - PARSE-TIME checks that a specified day of the week matches the
44     actual day of the week given in the date. An error is signaled
45     if they are inconsistent.
46 fgilham 1.12 - New option to SAVE-LISP allows creating executable Lisp images
47     that do not require a runtime loader.
48     Syntax: (save-lisp "filename" :executable t)
49     Currently supported on FreeBSD and Linux; work on a Solaris
50     version is underway.
51     Limitations: depends on files in "library:" to dump new
52     executable images.
53 rtoy 1.15 - CMUCL's version of CLX has been replaced with telent CLX.
54 rtoy 1.21 - Preliminary support for external formats. Currently only
55     iso8859-1 and utf-8 are supported. Utf-8 support is limited
56     since CMUCL only has 8-bit characters.
57 rtoy 1.22 - UNIX-MPROTECT added to access mprotect.
58 rtoy 1.1
59     * ANSI compliance fixes:
60 rtoy 1.3 - BOA constructors with &AUX variables are handled better now.
61 rtoy 1.6 - SHADOW accepts characters now.
62 rtoy 1.9 - Default initargs are now passed correctly to initialize-instance
63     and shared-initialize.
64 rtoy 1.28 - Several issues in formatted output of floats have been fixed:
65     o ~,dF won't print out extra digits if the number is too small.
66     o ~E sometimes erroneously printed the overflow filler instead
67     of the number.
68     o ~G has changed so that ~E is chosen more often. This is seen
69     when printing large numbers. Instead of printing lots of
70     zeroes, ~E is used. ~G now matches what Fortran would do.
71     o Inconsistencies between print and ~E are now gone. (See Trac
72     ticket #1.)
73     o Some incorrectly printed results for ~E have been fixed. (See
74     Trace ticket #12.)
75 rtoy 1.1
76     * Bugfixes:
77 rtoy 1.2 - Floating-point traps are now handled on ppc. Previously, no
78     traps were signalled and SET-FLOATING-POINT-MODES did nothing.
79 rtoy 1.3 - FILE-POSITION no longer returns negative values for mapped
80     file-simple-stream's.
81 rtoy 1.9 - Potential Version numbers that start with a leading 0 are no
82     longer treated as version numbers. Hence, "foo.~1~" has name
83     "foo", type nil, and version 1, but "foo.~01~" has type "~01~"
84     and version :NEWEST.
85 rtoy 1.5 - A bug in type derivation for EXPT has been fixed. (expt x y)
86     for x of type (double-float (0d0) 1d0) and y of type
87     (double-float (0d0)) now returns (or (member 0d0) (double-float
88     (0d0) 1d0)) instead of (double-float 0d0 1d0), i.e., -0d0 is not
89     in the range.
90 rtoy 1.6 - On sparc, the decoding of a trapping FP instruction is correct
91     now. Previously the wrong instruction was decoded, which
92     produced the wrong operation and operands in the arithmetic
93     error handler.
94 rtoy 1.8 - Fix issue with UNIX:UNIX-MMAP handling of "large" addresses that
95     appeared to be negative numbers.
96 rtoy 1.9 - DOUBLE-DOUBLE-FLOAT fixes:
97     o Converting negative rationals to double-double-float's doesn't
98     produce wrong answers anymore.
99     o (float <negative bignum> 1w0) no longer returns a positive
100     result.
101     o Some issues with creation of DOUBLE-DOUBLE-FLOAT and (COMPLEX
102     DOUBLE-DOUBLE-FLOAT) have been fixed on sparc, ppc, and x86.
103     These seem to work, except there appears to be some bugs on x86
104     when compiling at speed 3 and safety 0.
105     o (INTEGER-DECODE-FLOAT <double-double-float>) was sometimes
106     returning the wrong integer value because the two components had
107     the wrong sign.
108     o Some issues with debugger printing out DOUBLE-DOUBLE-FLOATs and
109     (COMPLEX DOUBLE-DOUBLE-FLOAT)'s have been fixed.
110 rtoy 1.10 o CLOS now recognizes that (COMPLEX DOUBLE-DOUBLE-FLOAT) is a
111     valid built-in class instead of a random object.
112     o Branch cuts for ASIN and ATANH for double-double-float's
113     should match the branches for double-float's.
114     o ATAN2 should correctly handle signed double-double-float
115     zeroes.
116     o FASL files containing -0w0 are now converted to -0w0 instead
117     of 0w0.
118     o SIN and TAN return -0w0 when the argument is -0w0.
119     Previously, they returned 0w0.
120 rtoy 1.11 o Signed zeroes are handled better for addition, subtraction,
121     and multiplication. That is, the correct signed zero is
122     returned now.
123     o Overflow in addition, multiplication, and division returns
124     infinity if traps are disabled.
125 rtoy 1.14 o EQL supports DOUBLE-DOUBLE-FLOAT's now.
126 rtoy 1.19 o The printer and reader should now be consistent for
127     double-double-floats.
128     o Conversion of bignums and ratios to double-double-floats
129     should be more accurate.
130 rtoy 1.20 o Double-double-float's should have print/read consistency now.
131 rtoy 1.28 o TRUNCATE works now when given a DOUBLE-DOUBLE-FLOAT divisor.
132     o FORMATted output of DOUBLE-DOUBLE-FLOAT's should work.
133 rtoy 1.10 - The assembler for ppc had some arguments for some instructions
134     in the wrong order, producing the wrong effect.
135 rtoy 1.11 - When making displaced arrays, the element types are checked to
136     see if they are type equivalent. If not, an error is signaled.
137     - The reader for #= and ## has been enhanced to be much faster for
138     cases with a large number of shared objects. However, it is also
139     somewhat slower for simple cases.
140 rtoy 1.16 - #p"..." now has a namestring and is treated as a pathname with
141     name ".." and type "".
142     - #p"..a" erroneously had directory (:relative). This has been
143     fixed so that directory = nil, name = ".", and type = "a".
144 rtoy 1.17 - Compiling code using SIGNUM no longer causes a compiler error.
145     The defoptimizer for SIGNUM was missing a case for
146     double-double-float.
147     - MAPHASH no longer causes a type-error when the mapping function
148     calls (setf gethash) on the same table.
149 rtoy 1.18 - NOTINLINE declarations are honored for local functions even if
150     they only have only one use. Previously, these would be inlined
151     anyway. This allows tracing of such functions.
152 rtoy 1.20 - TRACE and UNTRACE should now work as expected for local
153     labels/flet functions. Untracing should work. Redefining a
154     function should automatically retrace the local functions if
155     they were traced previously.
156 rtoy 1.22 - Callbacks should now work on systems where malloc'ed space does
157     not normally allow execution of code.
158 rtoy 1.23 - The FLOAT-ACCURACY declaration has been removed. This should
159     have no affect on most user's code, unless they were using
160     this. The default is 53-bit (double-float) precision for
161     everything and the compiler takes care of the precision for the
162     appropriate ABI. It is the compiler's responsibility to make
163     sure single-precision floats are done correctly with
164 rtoy 1.26 single-precision results. (This may be buggy currently.)
166     been removed.
167 rtoy 1.24 - A compiler bug with type inferencing and deleting unsued
168     functions has been fixed.
169     - A compiler bug has been fixed where a source transformation was
170 rtoy 1.26 incorrectly applied because the local variable happens to have a
171     function type and has the same name as a known function.
172 rtoy 1.24 - On Darwin/x86, tracing with :encapsulate nil works better, and
173     tracing of labels/flets works better. However, there are still
174     issues with tracing. Returning to the repl after tracing
175     sometimes fails, and you must exit lisp completely.
176 rtoy 1.28 - ~E should be faster now in some cases.
177     - The range over which sin/cos/tan would use the builtin
178     instruction on x86 has been reduced. Previously, values near
179     the limit would either produce result greater than 1 in absolute
180     value or cause a floating-point exception. Note that accuracy
181     is reduced when the builtin instructions are used for very large
182     arguments.
183 rtoy 1.29 - Issues with compact info environments should be fixed. The
184     issue manifests itself when a new core is saved with lots of
185     functions (or other objects). The resulting core executes the
186     wrong code for some of the functions.
187 rtoy 1.16
188 rtoy 1.1 * Trac Tickets:
189 rtoy 1.4 - #8 fixed so logs of bignums and ratios that won't fit into a
190     float can be computed, instead of signalling an error.
191 rtoy 1.9 - #9 fixed. An error is generated if the number of days doesn't
192     match the number of days in the given month.
193 rtoy 1.10 - #10 fixed. ROUND should now return correct answers for floats
194     bigger than most-positive-fixnum.
195 rtoy 1.14 - #11 fixed. EQL handles double-double-float's correctly now.
196 rtoy 1.19 - #1 fixed. prin1 and ~E should produce the same results.
197     - #12 fixed. (format t "~10,1,2,0,'*,,'DE" 1d-6) prints "0.1D-05"
198     now.
199 rtoy 1.1
200     * Other changes:
201 rtoy 1.15 - UNIX:UNIX-ERRNO accesses the thread errno value instead of the
202     global errno value.
203 rtoy 1.25 - Floating point zero is now printed with an exponent of zero,
204     independent of any scale factor that might be used. Thus, we
205     get results like "0.0D+00" instead of "0.0D-5".
206 rtoy 1.1
207     * Improvements to the PCL implementation of CLOS:
208 rtoy 1.2 - Forward-referenced classes are allowed.
209 rtoy 1.1
210     * Changes to rebuilding procedure:
211 rtoy 1.23 - load-world.sh now supports a -p option to load the world without
212     PCL. This is mostly for cross-compiling which doesn't want PCL
213     loaded because it's not build during a cross-compile.
214 rtoy 1.24 - make-dist.sh now defaults to bzip compression instead of gzip.
215 rtoy 1.23
216 rtoy 1.1
217     This release is not binary compatible with code compiled using CMUCL
218     19d; you will need to recompile FASL files.
220     See <URL:http://www.cons.org/cmucl/> for download information,
221     guidelines on reporting bugs, and mailing list details.
224     We hope you enjoy using this release of CMUCL!

  ViewVC Help
Powered by ViewVC 1.1.5