Skip to content
Snippets Groups Projects
Commit 6f8b2114 authored by emarsden's avatar emarsden
Browse files

Minor reorganizations and cleanups to release notes.

parent 7ada75f7
No related branches found
No related tags found
No related merge requests found
......@@ -15,21 +15,28 @@ Common Lisp. CMUCL is maintained by a team of volunteers collaborating
over the Internet, and is mostly in the public domain.
New in this release:
* Newly supported platforms:
- CMUCL has been ported to Mac OS X. The port includes support for
callbacks from foreign code, and linkage-table support (which
makes it possible to dump images that contain references to
foreign code).
- NetBSD/x86 supported.
* Feature enhancements:
- CMUCL ported to Mac OS X.
- Added a much faster and much less consy bignum printer and a
faster bignum reader.
- Extended REQUIRE to support *MODULE-PROVIDER-FUNCTIONS* from
SBCL.
- NetBSD supported.
- SIMPLE-STREAM fixes:
o READ-SEQUENCE and WRITE-SEQUENCE for
signed-byte/unsigned-byte 8 streams.
o Memory-mapped file streams.
- Large file support for Solaris, so CMUCL can handle files
larger than 2GB.
- Support for Mac OS X.
- A much faster GCD implementation.
- A faster Karatsuba multiplier when the number of words of the
bignums is not a power of 2. (Break-even is still around 1500
......@@ -41,21 +48,16 @@ New in this release:
- Lazy sxhash on symbols implemented for ppc.
- Pretty-printer for LOOP.
- Added some more pprinters for various forms.
- Callbacks supported on Mac OS X.
- Loop analysis code added to the compiler. It's incorporated
into the build and can be enabled by setting *loop-analyze* to
T, but the compiler doesn't use the loop information for
anything yet.
- Errors from socket functions signal a SOCKET-ERROR instead of
ERROR.
a generic ERROR condition.
- Efficiency notes are no longer printed if inhibit-warnings >=
2.5.
2.5.
- Simple support for datagram networking added: INET-RECVFROM,
INET-SENDTO, INET-SHUTDOWN.
- Linkage table support for PPC and Darwin.
- A socket reset signals a SOCKET-ERROR condition instead of a
general ERROR condition.
- :LINKAGE-TABLE feature is now supported on PPC.
- MAKE-INDENTING-STREAM and INDENTING-STREAM-P are exported from
the EXTENSIONS package instead of being internal.
- TRACE will work now for the known-return convention, which
......@@ -64,7 +66,7 @@ New in this release:
- Bivalent streams are supported. Thus, streams with
element-type (unsigned-byte 8) can be used for character
input/output as well as binary input/output. Supply the
option :CLASS 'EXT:BINARY-TEXT-STREAM for OPEN to get bivalen
option :CLASS 'EXT:BINARY-TEXT-STREAM for OPEN to get bivalent
streams. EXT:READ-VECTOR and EXT:WRITE-VECTOR also
implemented. This is somewhat experimental right now, and may
change slightly in a future version.
......@@ -81,7 +83,7 @@ New in this release:
fixes an issue with ASDF and logical pathnames.
- Numerous fixes to the float printer, including a new float
printer.
- Justification (~< ~>) works better.
- Justification (~< ~> FORMAT directives) works better.
- ~V with the value of NIL in format strings is treated to mean
as if it weren't given at all, as specified by ANSI CL.
- Characters print consistently with ~:C and ~S.
......@@ -91,7 +93,7 @@ New in this release:
- UPGRADED-COMPLEX-PART-TYPE returns RATIONAL for integer types
now. (CMUCL doesn't really have a (COMPLEX INTEGER) type).
- When a pathname can't be printed readably, signal a
PRINT-NOT-READABLE condition
PRINT-NOT-READABLE condition.
- Printing arrays readably was sometimes wrong.
- FOR-AS-ON-LIST works with dotted lists.
- DEFSTRUCT predicates for list structures don't produce errors
......@@ -99,7 +101,7 @@ New in this release:
- UNBOUND-SLOT condition no longer takes the :slot keyword. It
uses the ANSI-specified :name keyword. This is not backward
compatible!
- MAKE-SYMBOL takes STRING's, not just SIMPLE-STRING's.
- MAKE-SYMBOL takes STRINGs, not just SIMPLE-STRINGs.
- PPRINT-POP did not return NIL when the list arg to
PPRINT-LOGICAL-BLOCK was NIL.
- Signal appropriate error conditions instead of a plain error
......@@ -116,49 +118,49 @@ New in this release:
- Format bugs in ~{ and ~@[X~], as noted by ansi-tests, have
been fixed.
- Evaluation order of REMF, INCF, and DECF.
- When *read-suppress* is T, READ, READ-PRESERVING-WHITESPACE,
- When *READ-SUPPRESS* is T, READ, READ-PRESERVING-WHITESPACE,
READ-DELIMITED-LIST, and READ-FROM-STRING now return NIL, as
specified by ANSI CL. (Previously, CMUCL would return a list
of NILs.)
- Pathname components of type :UNSPECIFIC are not printed in
namestrings anymore.
- Dumping of symbols in fasls work according to ANSI now.
- Pathname components of type :UNSPECIFIC are no longer printed in
namestrings.
- Dumping of symbols in fasls now works according to ANSI.
- READ-FROM-STRING was sometimes not returning the correct
second value when the string was a displaced string.
- The invalid trait for constituent characters is handled
better.
- (formatter "~V[...~]" now returns the correct result for
second value.
- (formatter "~V[...~]") now returns a correct second value.
- MAKE-DISPATCH-MACRO-CHARACTER is supposed to return T.
- APROPOS and APROPOS-LIST don't take 3 args anymore. ANSI CL
- APROPOS and APROPOS-LIST no longer take 3 arguments. ANSI CL
says they only take 2.
- A reader error is signaled when bad ratios (like 1/0) are read
or when a float can't fit into the specified float type.
- A form like #(1 . 2) signals a reader error now.
- A form like #(1 . 2) now signals a reader error.
- NIL as a keyword arg is no longer silently accepted, unless
NIL was actually a specified keyword arg.
- Some cases of reader errors being signaled when
*READ-SUPPRESS* was T no longer occur.
- The datum slot for check-type contains the place-value now
instead of the place.
- The expected-type and datum should be consistent in
type-errors now. (datum is not of the expected-type.)
- The expected-type and datum should now be consistent in
type-errors (datum is not of the expected-type).
Similar situations in other errors are also corrected.
* Numerous bugfixes:
- FFLOOR and friends preserve the sign of the arg, so -0.0 is
returned for negative args.
- EXPT sometimes returne NaN instead of 1 when the power was 0.
- Weak pointers don't have O(n^2) GC behavior anymore.
- EXPT sometimes returned NaN instead of 1 when the power was 0.
- Weak pointers no longer have O(n^2) GC behavior.
- X11 authorization changes to solve problems seen with servers
that don't listen to TCP connection requests.
- unix-read fix
- UNIX-READ fix
- The compiler would give an error on deriving the result type
of RANDOM when the arg to RANDOM was a union type.
- "~*~" was not being parsed to mean a wildcard version.
- UNIX-GETPWUID implemented for Darwin. Needed for FILE-AUTHOR.
- The compiler no longer gives errors when deriving the result type of
coerce when converting a integer to a float that would not fit
COERCE when converting a integer to a float that would not fit
in a float.
- Fix bug in reading from streams with element-type SIGNED-BYTE
for sizes greater than 32: Positive numbers were incorrectly
......@@ -168,7 +170,7 @@ New in this release:
because PPRINT-EXIT-IF-LIST-EXHAUSTED caused an early exit.
- Macro expansion was not looking in the local environment
properly for local definitions.
- Circular Weak pointers can now be printed when *print-circle*
- Circular weak pointers can now be printed when *PRINT-CIRCLE*
is T.
- "foo.lisp.*" is interpreted to have version :wild, just like
"foo.lisp.~*~".
......@@ -217,7 +219,7 @@ New in this release:
- Output to (make-two-way-stream (make-concatenated-stream)
(make-broadcast-stream)) silently discards output instead of
producing an error.
- STRING<, STRING<=, STRING>, STRING>= no longer produces
- STRING<, STRING<=, STRING>, STRING>= no longer produce
incorrect results.
- COPY-SEQ sometimes produced erroneous results because the
compiler was confused by the derived result type of COPY-SEQ.
......@@ -233,15 +235,15 @@ New in this release:
- The disassembler handles closures better.
- The result array for bit-* operations was sometimes too short
if the args had fill pointers.
- Weak hash tables don't cause GC to go into infinite loops
anymore.
- (PEEK-CHAR nil s nil foo) doesn't remove the character
- Weak hash tables no longer cause GC to go into an infinite loop.
- (PEEK-CHAR nil s nil foo) doesn't remove the character
that was read if FOO happens to match the character that
PEEK-CHAR returns.
- PROFILE sometimes crashes when an internal data structure was
set to a non-boolean value.
* Other changes:
- Infinite loops in map and friends caused by specifying
sequence types that are too hairy for CMUCL should no longer
occur. But CMUCL will now signal an error, which may not be
......@@ -266,20 +268,20 @@ New in this release:
would just use it.
* Improvements to the PCL implementation of CLOS:
- AMOP-style custom slot allocation supported.
- The value of a slot that is specified as shared in the old
class and as local in the new class is now retained.
- CMUCL supports using the class name for the :metaclass
argument.
* Improvements to Hemlock, the Emacs-like editor:
* Changes to rebuilding procedure:
- Added a new script to run all of the subscripts needed to
build CMUCL. Won't handle all cases, but will handle the most
common builds.
* Deprecated features:
This release is not binary compatible with code compiled using CMUCL
19a; you will need to recompile FASL files.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment