========================== C M U C L 18 c =============================
December 25, 2000
The CMUCL project is pleased to announce the release of CMUCL 18c. This is a major release which contains numerous enhancements and bugfixes from the 18b release.
CMUCL is a free, high performance implementation of the Common Lisp programming language which runs on most major Unix platforms. It mainly conforms to the ANSI Common Lisp standard. CMUCL provides a sophisticated native code compiler; a powerful foreign function interface; an implementation of CLOS; the Common Lisp Object System; which includes multimethods and a metaobject protocol; a source-level debugger and code profiler; and an Emacs-like editor implemented in Common Lisp. CMUCL is maintained by a team of volunteers collaborating over the Internet, and is in the public domain.
Features new in this release:
- Every platform now supports
(complex single-float)
and(complex double-float)
(and long-float for the x86). - Every platform now supports signed-array's with elements of type
(signed-byte 8)
,(signed-byte 16)
,(signed-byte 30)
, and(signed-byte 32)
. - On the x86 and sparc platform, much larger heaps are available.
- Support for glibc2 on x86.
- Support for FreeBSD 4.x, Solaris 2.7 & 8.
- Better support for Sparc V9 machines (UltraSparc? II and later).
- Better handling of logical pathnames and pathnames in general.
- equalp hash tables implemented.
- New implementations of some sequence functions to run significantly faster.
- Specialized arrays and various other objects can be printed readably now, using a CMUCL extension.
LOCALLY
is a special form, not a macro.COMPILER-LET
is now in the extension package.PRINT-OBJECT
methods can be used with structures. (But the:print-object
option todefstruct
is still not accepted.)- The dynamic heap size is now controllable from the command line with
the
-dynamic-space-size
option on the x86 and sparc ports. - The {{[-batch}}} commandline option flushes all output on exit, and causes exit upon error also when using -load.
- A new
-quiet
commandline to suppress informational messages. :cmu17
is no longer a*feature*
. This may break existing code. A simple possible workaround is to replace:cmu17
with(or :cmu17 :cmu18)
everywhere in the offending code.
Some sparc-specific changes:
- Bigger spaces:
- 256 MB for read-only and static spaces
- 128 MB for binding and control stacks
- Upto 1 GB for the lisp heap. Default is 256 MB
- Added VOPS for complex single/double-float operations.
- Try not to use deprecated instructions in the V9 architecture.
- In certain situations, use conditional move instructions available in the V9 architecture.
And finally,
- Lots and lots of bug fixes, improvements to ANSI CL conformance and lots and lots of compiler enhancements.
This release is not binary compatible with code compiled using CMUCL 18b; you will need to recompile FASL files.
See <URL:http://www.cons.org/cmucl/> for download information, guidelines on reporting bugs, and mailing list details.
We hope you enjoy using this release of CMUCL!