ViewVC logotype

Contents of /src/general-info/release-20a.txt

Parent Directory Parent Directory | Revision Log Revision Log

Revision - (hide annotations)
Thu Aug 27 12:50:55 2009 UTC (4 years, 7 months ago) by rtoy
CVS Tags: release-20a-pre1, RELEASE_20a
Changes since +20 -19 lines
File MIME type: text/plain
Fix typos and phrasing.
1 rtoy 1.1 ========================== C M U C L 20 a =============================
3     The CMUCL project is pleased to announce the release of CMUCL 20a.
4     This is a major release which contains numerous enhancements and
5 rtoy bug fixes from the 19f release.
6 rtoy 1.1
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 rtoy which includes multi-methods and a meta-object protocol; a source-level
13 rtoy 1.1 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 * Known issues:
20     - On Linux and FreeBSD, it may not be possible call SAVE-LISP and
21     create executables. This seems to be broken on FreeBSD. On
22     Linux, it seems to depend on what version of Linux is used to
23     create the executable. Redhat Enterprise Linux appears to be
24     ok, but Open SuSE 10.x is not.
26 rtoy 1.1 * Feature enhancements:
27 rtoy 1.7 - Support for Unicode has been added. You have Unicode support if
28     *FEATURES* includes :UNICODE.
29     o CHAR-CODE-LIMIT is 65536.
30     o There is only one character type; CHARACTER and BASE-CHAR are
31     the same types.
32     o There is only one string type; STRING and BASE-STRING are the
33     same type. All strings are UTF-16 strings and therefore
34     contain UTF-16 surrogate pairs. While most string functions
35     correctly handle surrogate pairs, not all do. It is up to the
36     user to handle this. In particular, processing of strings on
37     a character-by-character basis will need to handle surrogate
38     pairs.
39     o External formats are supported. Functions that need to know
40     the external format take an :EXTERNAL-FORMAT keyword argument
41     to specify the format.
42     + The special variable STREAM:*DEFAULT-EXTERNAL-FORMAT*
43     specifies the default format to be used for all streams.
44 rtoy The default value is :ISO8859-1.
45     + The standard streams, *STANDARD-INPUT*, *STANDARD-OUTPUT*,
46     and *STANDARD-ERROR* all default to
47     *DEFAULT-EXTERNAL-FORMAT* (which itself defaults to
48     :ISO8859-1). You can change the encoding used for these
49 rtoy 1.15 streams by calling STREAM:SET-SYSTEM-EXTERNAL-FORMAT to set
50     the encoding for all three streams. Alternatively, you can
51 rtoy use (SETF EXTERNAL-FORMAT) to change the format for each
52 rtoy 1.15 stream.
53 rtoy 1.7 + Many external formats are supported. The complete list is
54     in aliases, but we support at least :ISO-8859-1, :UTF-8,
55 rtoy :UTF-16, :UTF-32, and the composing external format :CRLF.
56 rtoy 1.7 o CHAR-LESSP and friends perform case-folding by converting to
57     lowercase. (The non-Unicode version converted to uppercase.)
58     o STRING<, STRING>, and friends compare strings in codepoint order.
59     o STRING-LESSP, STRING-GREATERP, and friends compare strings in
60     codepoint order after doing a case-folding operation on each
61     codepoint. The case-folding operation converts each
62     codepoint to the corresponding lowercase codepoint.
63 rtoy o LISP:UTF16-STRING-P checks to see if a string is a valid
64     UTF-16 encoded string.
65     o Unicode normalization forms are supported via
68 rtoy 1.7 o Symbols are always normalized to NFC form.
70     - WRITE-VECTOR and READ-VECTOR support vectors of with element
71 rtoy 1.8 sizes of 1 bit, 2 bits and 4 bits. For :NETWORK-ORDER, the
72     bytes are written such that the lowest indexed element is
73     written to the most significant part of a byte.
74 rtoy 1.1
75     * ANSI compliance fixes:
76 rtoy 1.14 - MERGE-PATHNAMES no longer generates pathnames whose directory
77     component doesn't start with either :ABSOLUTE or :RELATIVE.
78     MERGE-PATHNAMES also signals errors if the generated pathname
79     directory is invalid (such as :ABSOLUTE followed by :BACK).
80 rtoy 1.1
81     * Bugfixes:
82 rtoy 1.3 - CMUCL sometimes gets "stuck" during compilation where it is
83     trying to simplify the union of a large number of disjoint
84     numeric types. Previously, we handled the case of integer
85     types. Extend this to handle floats as well.
86 rtoy 1.4 - SXHASH was computing the same hash code for upper and lower case
87 rtoy characters by up-casing the character. This isn't necessary
88 rtoy 1.4 since the characters are not EQUAL, so make SXHASH return
89     different values for upper and lower case letter.
90 rtoy 1.6 - WRITE-VECTOR was not writing out enough data when no
91     byte-swapping is needed and the end index was not given.
92     (Confusion about the length of the vector versus the index as an
93     octet count, not element count.)
94 rtoy 1.7 - Motif (CLM) should work with Unicode.
95 rtoy 1.8 - The stream created by WITH-INPUT-FROM-STREAM was not properly
96     closed.
97     - SXHASH was returning different values for -0f0 and -0d0 for
98 rtoy compiled and interpreted code. They both return the same value
99 rtoy 1.8 now.
100     - Some issues with potential spurious floating-point exceptions
101     with complex arithmetic on x86 with SSE2 have been fixed.
102     (Random junk in unused parts of an sse2 register could cause
103     spurious FP exceptions.)
104     - Numeric contagion for complex + real and complex - real was not
105     done correctly in compiled code. Proper contagion is now done
106     by converting the real to a complex before performing the
107     operation.
108     - CMUCL can now handle the X11 local Unix display connection on
109     Mac OS X.
110     - SETF-SLOT-VALUE-USING-CLASS-DFUN no longer signals errors when
111     checking the new value against the declared slot type when the
112     declared slot type was too hairy for TYPEP.
113 rtoy 1.9 - GENTEMP no longer generates the wrong symbol if the
114     pretty-printer is used.
115 rtoy 1.10 - Some issues with slow allocation with gencgc have been worked
116     around. Certain allocation sequences were causing all
117     allocations to be done out-of-line into an almost full
118     allocation region. This was especially evident on sparc and ppc
119     when running the ansi test suite from gcl on a unicode build.
120     CMUCL will attempt to detect this and abandon the region,
121     allowing inline allocation to be done again.
122 rtoy 1.11 - For x86 builds, the floating-point precision was incorrectly set
123     to 64 bits (long-float) instead of 53 bits (double-float). This
124     is fixed now.
125 rtoy 1.1
126     * Trac Tickets:
127 rtoy 1.2 #31: pathname bug with :case :common
128     Fixed. The common case is applied to each part of the directory,
129     not to the directory as a whole.
130 rtoy 1.1
131     * Other changes:
132 rtoy 1.5 - SOFTWARE-VERSION may return different results than previously.
133     UNIX:UNIX-UNAME is now used to obtain the software version on
134     Linux and Solaris.
135 rtoy 1.10 - User's manual updated with a section on internationalization
136 rtoy 1.8 (unicode).
137     - DESCRIBE on characters includes the character's code and name.
138     - CLX updated to the portable clx version from Christophe Rhodes
139     darcs repository of 2009-06-16.
140 rtoy 1.14 - make-dist.sh will also install the source code in the specified
141     directory if -I and -S are given.
142 rtoy 1.15 - CMUCL contribs (in the src/contribs directory) are now
143     distributed as part of extras package. The contribs can be
144     loaded by first using (require "cmu-contribs"). Then the
145     individual contribs can be loaded with require. The available
146     contribs are, "contrib-demos", "contrib-follow-mouse",
147     "contrib-games-feebs", "contrib-hist", "contrib-psgraph",
148     "contrib-ops", "contrib-embedded-c", "contrib-sprof". The names
149     must be given as lower case strings. These are not officially
150     supported as part of CMUCL, but users may find them useful.
151 rtoy 1.1
152     * Improvements to the PCL implementation of CLOS:
154     * Changes to building procedure:
155 rtoy - The sparc config files are now named sparc_gcc and sparc_sunc,
156 rtoy 1.12 which use gcc and Sun C, respectively, for the C compiler. Only
157     Solaris is supported. The old sun4_solaris_gcc and
158     sun4_solaris_sunc configs are deprecated.
159 rtoy - The Linux config file is x86_linux, which supports gencgc. The
160     old cgc config is no longer supported.
161     - The FreeBSD config file is x86_freebsd, which supports gencgc. The
162     old cgc config is no longer supported.
163 rtoy 1.1
164     This release is not binary compatible with code compiled using CMUCL
165     19f; you will need to recompile FASL files.
167     See <URL:http://www.cons.org/cmucl/> for download information,
168     guidelines on reporting bugs, and mailing list details.
171     We hope you enjoy using this release of CMUCL!

  ViewVC Help
Powered by ViewVC 1.1.5