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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.17 - (show annotations)
Wed May 31 13:07:48 2006 UTC (7 years, 10 months ago) by rtoy
Branch: MAIN
CVS Tags: double-double-array-base, double-double-init-sparc-2, double-double-base, double-double-init-sparc, double-double-init-ppc, double-double-init-%make-sparc, double-double-array-checkpoint, double-double-reader-checkpoint-1, double-double-init-checkpoint-1, double-double-reader-base, double-double-init-x86, double-double-sparc-checkpoint-1, double-double-irrat-start, snapshot-2006-06
Branch point for: double-double-reader-branch, double-double-array-branch, double-double-branch
Changes since 1.16: +16 -6 lines
File MIME type: text/plain
o Update from commit logs in preparation for snapshot
o Move some bugfix entries to ANSI compliance fixes.
1 ========================== C M U C L 19 d =============================
2
3 [--- WORK IN PROGRESS --- DO NOT DISTRIBUTE ---]
4
5 The CMUCL project is pleased to announce the release of CMUCL 19d.
6 This is a major release which contains numerous enhancements and
7 bugfixes from the 19c 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
22 * Feature enhancements:
23
24 - Destructive functions like nreverse that modify constant args
25 will produce a warning.
26 - Destructive functions like nreverse whose results are not used
27 will produce a warning.
28 - Pathnames that cannot be printed readably using #p"..." will
29 now be printed using the CMUCL extension #P(...). However,
30 there are still cases where CMUCL cannot print pathnames
31 readably, but these involve search-lists and patterns.
32 - LONG-LONG and UNSIGNED-LONG-LONG are recognized types in the
33 C-CALL package for signed and unsigned 64-bit integers.
34 - A port of gencgc to Darwin/ppc has been made. This still
35 needs work, and is known to have some issues, but it compiles
36 CMUCL without problems and runs maxima just fine.
37 - TRACE supports tracing of FLET/LABELS functions. Use (trace
38 (labels foo bar)) to trace the labels function FOO in the
39 function BAR. This is currently experimental.
40 - DISASSEMBLE will disassemble flets/labels functions when
41 disassembling a function. Set disassem::*disassemble-flets*
42 to NIL to turn this off.
43 - Simple errors in socket handling code have been converted to
44 socket-error's to allow easier distinction of the errors.
45 - EXT:LOAD-FOREIGN will use dlopen to try to open a shared
46 library, so if dlopen searches in certain places, LOAD-FOREIGN
47 will find the shared object.
48 - A new search-list "ld-library-path:" has been created and
49 contains the value of the environment variable
50 LD_LIBRARY_PATH. This is analogous to the "path:"
51 search-list.
52 - When a core file is started, any shared libraries that were
53 loaded when the core was made will be reloaded on startup. If
54 the library cannot be found, several restarts are available.
55
56 * Numerous ANSI compliance fixes:
57
58 - A reader-error is signaled if the number that is being read is
59 too small to be presented. We used to silently return 0.
60 - WITH-INPUT-FROM-STRING no longer modifies the index if
61 WITH-INPUT-FROM-STRING is not exited normally.
62 - An error is signaled if a declaration is used as the name of a
63 deftype, condition, or defstruct, and vice versa.
64 - An error is signaled when trying to generate a namestring from
65 a pathname with just a version component (other than nil,
66 :newest, or :unspecific). CMUCL cannot print that readably.
67 - FLET and LABELS functions will catch errors in keyword
68 parameters. Previously, a keyword of NIL was silently
69 accepted.
70 - Printing a zero using ~E will now include a trailing zero
71 after the decimal point, as required by CLHS, 22.3.3.2.
72 - DOCUMENTATION and (SETF DOCUMENTATION) now works for
73 structures of type list or vector.
74 - DOTIMES will execute the loop the specified number of times,
75 independent of what the loop might do to the loop counter.
76 - Printing of circular objects using logical-blocks is handled
77 better.
78 - SET-SYNTAX-FROM-CHAR copies the entire dispatch table of
79 reader macro functions if necessary.
80 - SET-SYNTAX-FROM-CHAR handles single-escape, multiple-escape
81 and # characters correctly now.
82 - When CLOSE'ing a file with :ABORT, don't delete the file,
83 unless we renamed it. This preserves any and all changes to
84 the file, instead of deleting it.
85 - As specified by CLHS 22.1.3.1.3, PRIN1 and friends now produce
86 a trailing zero if necessary.
87 - As specified by CLHS 22.3.3.2, ~E will produce a single zero
88 for the fractional part, if necessary.
89 - (FORMAT NIL "~,2F" 0.001) produces "0.00" instead of "0.001".
90 Thus, we actually honor the d field now.
91
92 * Numerous bugfixes:
93
94 - LISTEN on DUAL-CHANNEL-SIMPLE-STREAM should work now.
95 - Some numerical issues with the two-arg log function have been
96 fixed. (log 17 10f0), (log 17f0 10) and (log 17 10) all
97 return the same result now.
98 - DESTRUCTURING-BIND no longer causes an error when the list to
99 be destructured is circular.
100 - PEEK-CHAR for Gray streams handles end of file correctly now.
101 - For the ppc port, the alignment of objects in alien structures
102 now matches the PowerOpen ABI for Mac OS X.
103 - For Darwin/ppc, CMUCL was not following the ABI when calling
104 out to C varargs functions. Now we always copy any float args
105 to the corresponding int regs (or stack) as required by the
106 ABI. This isn't necessary for non-varargs functions, but
107 CMUCL doesn't know functions which are varargs functions.
108 - Callbacks with long-long args or results should work correctly
109 now for Darwin/ppc.
110 - DESCRIBE no longer depends on having PCL loaded.
111 - Tracing with no encapsulation appears to be working now for
112 ppc.
113 - A simple interface to sysinfo(2) has been added for sparc.
114 This is used to provide better values for MACHINE-TYPE and
115 MACHINE-VERSION.
116 - PARSE-TIME can parse times like "Tue Sep 7 18:56:57 UTC 2004"
117 again.
118 - The pretty-printer for MULTIPLE-VALUE-BIND can handle
119 malformed MULTIPLE-VALUE-BIND forms now, instead of producing
120 an error.
121 - Callbacks on Darwin/ppc with a large number of args (more than
122 8 integer args) should work correctly now. (Previous versions
123 would signal an error.)
124 - DESCRIBE no longer says arrays are adjustable when they are
125 not, and vice versa.
126 - Disassembly of some floating-point instructions on ppc has
127 been corrected to display floating-point registers instead of
128 integer registers.
129 - (read (make-array 5)) doesn't cause a segfault anymore on
130 x86/linux. An error is now signaled saying the object isn't
131 one of the possible stream types.
132 - The PPC port no longer runs very slowly on some tests on a G5.
133 This was caused by using an instruction (mcrxr) that is
134 emulated on a G5 but not earlier.
135 - The pretty printer no longer causes an error on badly formed
136 slots in defclass forms.
137 - Document LISP::*IGNORE-WILDCARDS*. When set, namestrings will
138 not have pathnames with wildcards escaped when parsing
139 namestrings or when creating namestrings.
140 - Fix PPC bug in fixnum arithmetic that caused overflow. A trap
141 would be triggered, but there's no C support for the trap.
142 - Some flet/labels functions were not disassembled at all.
143 - DEFMACRO within a WITHOUT-PACKAGE-LOCKS now actually disables
144 the package lock.
145 - (expt 1 <big number>) doesn't trigger a continuable error
146 anymore and returns 1 immediately.
147 - Disassembling methods doesn't produce a type error anymore.
148 - IGNOREing a symbol in a SYMBOL-MACROLET doesn't cause a type
149 error anymore.
150
151 * Other changes:
152
153 - CMUCL catches more cases where it cannot print a pathname
154 readably. In particular when the pathname name contains "/"
155 or ".", or when the pathname type contains a ".".
156 - WITH-SLOTS and WITH-ACCESSORS are now pprinted like
157 MULTIPLE-VALUE-BIND instead of like WITH-OPEN-FILE.
158 - LOOKUP-HOST-ENTRY now returns a second value. If
159 LOOKUP-HOST-ENTRY succeeds, the second value is T; otherwise,
160 the value of h_errno is returned.
161
162 * Improvements to the PCL implementation of CLOS:
163
164 * Changes to rebuilding procedure:
165 - Build scripts should recognize FreeBSD automatically.
166 - Should be able to build on either Mac OS X 10.2 or 10.4 using
167 the default version of gcc.
168
169 This release is not binary compatible with code compiled using CMUCL
170 19c; you will need to recompile FASL files.
171
172 See <URL:http://www.cons.org/cmucl/> for download information,
173 guidelines on reporting bugs, and mailing list details.
174
175
176 We hope you enjoy using this release of CMUCL!
177

  ViewVC Help
Powered by ViewVC 1.1.5