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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.6.2.5 - (show annotations)
Thu Dec 18 21:50:19 2008 UTC (5 years, 3 months ago) by rtoy
Branch: unicode-utf16-branch
CVS Tags: unicode-utf16-sync-2008-12
Changes since 1.6.2.4: +40 -2 lines
File MIME type: text/plain
Merge Snapshot 2008-12 to this branch.  Some tweaks needed in
boot-2008-05-cross-unicode-x86.lisp and the Config files.  FreeBSD and
Darwin/x86 untested, but Linux and Solaris build ok.
1 ========================== C M U C L 19 f =============================
2
3 [--- WORK IN PROGRESS ---]
4
5 The CMUCL project is pleased to announce the release of CMUCL 19f.
6 This is a major release which contains numerous enhancements and
7 bugfixes from the 19e 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 - ~R supports many more cardinal names.
24 - Updated network support:
25 o Added BIND-INET-SOCKET to bind a socket to a local address.
26 o Added OPEN-NETWORK-STREAM to create a stream connected to a given host.
27 o Added ACCEPT-NETWORK-STREAM to create a stream connected to
28 the new network connection
29 o Updated CONNECT-TO-INET-SOCKET to allow binding the newly
30 created socket to a local address
31 - Added UNIX:UNIX-OPENPTY, an interface to the openpty C library
32 function.
33 - SSE2 support added for x86.
34 o CMUCL automatically detects whether sse2 is supported or not
35 and loads up the appropriate core file.
36 o New -fpu switch allows the user to specify explicitly which
37 core should be used.
38 o Fasls compiled with sse2 support have the extension sse2f.
39 Otherwise, the normal x86f extension is used. This allows the
40 user to do tests/experiments with both x87 and sse2 without
41 having to mess around with different directories and removing
42 fasls before building for a different FPU.
43
44 * ANSI compliance fixes:
45 - Fix bug in backquote printer. If the variable is @foo, we want
46 to print ", @foo" not ",@foo". Similarly, for .foo, we want to
47 print ", .foo" instead of ",.foo".
48 - Fix merging of version in MAKE-PATHNAME. If the pathname name
49 is given, the version is not affected by the version in the
50 default pathname.
51 - RENAME-FILE now creates defaulted-new-name from merging new-name
52 with the original filespec. This is an incompatible change from
53 the previous version which created defaulted-new-name from
54 merging the new-name with the truename of filespec. Also, a
55 logical pathname should be returned if new-name is a logical
56 pathname.
57 - Character names need to be a capital letter followed by lower
58 case. Needed to match what ~:C does. (Found via ansi-tests).
59
60 * Bugfixes:
61 - Compiler can now derive the rank of an array, even if the array
62 is not simple.
63 - Fix off-by-one bug in ~R which prevents printing numbers from
64 10^63 to 10^66-1. 10^63 is a vigintillion.
65 - The compiler and interpreter should now handle slot-value the
66 same. Previously, different results were returned for things
67 like (slot-value foo :a).
68 - UNIX-GETGRNAM is now defined for Darwin (x86 and ppc).
69 - UNIX-GETPWUID is defined for all BSD systems.
70 - Type-derivation for EXPT no longer causes errors in some
71 situations. The computed bounds were of the wrong type for the
72 resulting type specifier.
73 - Pathname printer no longer produces an error for (MAKE-PATHNAME
74 :HOST NIL :TYPE "foo"). It returns #P(:HOST NIL :TYPE "foo")
75 now.
76 - Type derivation for DOUBLE-DOUBLE-FLOAT arithmetic should be
77 working. Previously, all arithmetic operations would just
78 return DOUBLE-DOUBLE-FLOAT even though the compiler should have
79 been able to figure out a tighter result.
80 - When SCALE-FLOAT would underflow, it would always return 0f0,
81 instead of a floating-point zero of the correct type.
82 - Fix some issues in creating the debug arglist string when the
83 arglist contains items that can't be printed readably.
84 - DIRECTORY is now faster for directories with a large number of
85 files.
86 - RANDOM is now much faster on all platforms for numbers upto
87 #xffffffff. This is an incompatible change from previous
88 releases because the numbers produced may be different from
89 before.
90 - The small bias in RANDOM for integer args up to 32 bits long
91 should now be gone.
92 - Improved type derivation for LOGAND when one arg is bounded but
93 the other is not.
94 - Some issues with tracing on sparc and ppc have been fixed. This
95 usually manifests itself with a segfault just after the function
96 result is printed.
97 - Fixed bug on sparc where C-c sometimes causes a segfault. We
98 now handle the case where siginfo_t is NULL, which can also
99 happen on other architectures.
100 - The interpreter catches invalid EVAL-WHEN situations just like
101 the compiler, instead of silently ignoring them.
102 - FLOAT-PRECISION supports double-double floats.
103
104 * Trac Tickets:
105 - #16: Read-time hash-table issue
106 Fixed.
107 - #17: LOOP NAMED NIL has no effect
108 Fixed.
109 - #18: Modular arith bug 1
110 Fixed
111 - #19: Modular arith bug 2
112 Fixed by not doing modular arith if the args are known to be
113 fixnums.
114 - #20: Modular arith bug?
115 Fixed via the fix for Trac #21. The original workaround has
116 been removed.
117 - #24: Float contagion for expt
118 Float contagion is applied to the arguments before computing
119 expt.
120 - #21: Modular arith bug 3
121 Fixed by delaying the logand defoptimizer.
122 - #15: x86 double-float issue
123 Fixed when using SSE2 support. We will not fix this for x87.
124
125 * Other changes:
126 - IS1, IS2, IS3, and IS4 are recognized character names for the
127 ASCII control codes US, RS, GS, FS, respectively.
128 - Added OPEN-NETWORK-STREAM and ACCEPT-NETWORK-STREAM functions.
129 - When initializing a random state, try to read 627 words from
130 /dev/urandom to initialize the entire state vector with random
131 bits. Previously, only one word was read.
132 - A seed of 0 is allowed in KERNEL:INIT-RANDOM-STATE.
133 - Updated User guide to include more examples of tracing.
134 - Enable gencgc page protection on x86/darwin. This can speed up
135 GC a bit. (Not measured.)
136 - Bignum truncate is significantly faster. Some cl-bench
137 benchmarks are now almost twice as fast.
138 - The continuable error produced by raising an integer to a power
139 exceeding *intexp-maximum-exponent* is now a restart, giving the
140 user the option to continue and update the limit to the new
141 power.
142
143 * Improvements to the PCL implementation of CLOS:
144 - The compiler and interpreter should handle SLOT-VALUE the same
145 way. Previously, (SLOT-VALUE obj :a) would behave differently
146 in the compiler and interpreter.
147 - Some issues with get-accessor-method-function and
148 slot-value-using-class have been fixed.
149 Get-accessor-method-function was causing an error to be signaled
150 incorrectly.
151
152 * Changes to building procedure:
153
154 This release is not binary compatible with code compiled using CMUCL
155 19e; you will need to recompile FASL files.
156
157 See <URL:http://www.cons.org/cmucl/> for download information,
158 guidelines on reporting bugs, and mailing list details.
159
160
161 We hope you enjoy using this release of CMUCL!
162

  ViewVC Help
Powered by ViewVC 1.1.5