wiki:WikiStart

Version 21 (modified by rtoy, 3 years ago) (diff)

--

Welcome to the CMUCL Trac

CMUCL is a free implementation of the Common Lisp programming language which runs on most major Unix platforms. It mainly conforms to the ANSI Common Lisp standard. Here is a summary of its main features:

  • support for static arrays that are never moved by GC but are properly removed when no longer referenced.
  • Unicode support, including many of the most common external formats such as UTF-8 and support for handling Unix, DOS, and Mac end-of-line schemes.
  • native double-double floats including complex double-double floats and specialized arrays for double-double floats and and complex double-double floats that give approximately 106 bits (32 digits) of precision.
  • a sophisticated native-code compiler which is capable of powerful type inferences, and generates code competitive in speed with C compilers.
  • generational garbage collection on all supported architectures.
  • multiprocessing capability on the x86 ports.
  • a foreign function interface which allows interfacing with C code and system libraries, including shared libraries on most platforms, and direct access to Unix system calls.
  • support for interprocess communication and remote procedure calls.
  • an implementation of CLOS, the Common Lisp Object System, which includes multimethods and a metaobject protocol.
  • a graphical source-level debugger using a Motif interface, and a code profiler.
  • an interface to the X11 Window System (CLX), and a sophisticated graphical widget library (Garnet).
  • programmer-extensible input and output streams (Gray streams and simple-streams).
  • an Emacs-like editor implemented in Common Lisp.
  • freely redistributable: free, with full source code (most of which is in the public domain) and no strings attached (and no warranty). Like the GNU/Linux and *BSD operating systems, CMUCL is maintained and improved by a team of volunteers collaborating over the Internet.

Latest News

2011-09-20

The CMUCL CVS repository has been converted to git and is now available. You can browse the repository using the browse link above, or you can visit CMUCL gitweb for a different view. This page also includes links necessary for cloning the repository. (For commiters, be sure to put your userid in the ssh link.)

The CVS repository will still be available, but will not allow checkins anymore.

Git is integrated with Trac so the commit messages can refer to and even close Trac tickets. If the commit messages contains text like

        command #1
	command #1, #2
	command #1 & #2
	command #1 and #2

then the given command is applied to the specified tickets. Instead of the short-hand syntax above, you can also use

        command ticket:1
	command ticket:1, ticket:2
	command ticket:1 & ticket:2
	command ticket:1 and ticket:2

The available commands (not case-sensitive) are:

close, closed, closes, fix, fixed, fixes
The specified issue numbers are closed with the contents of this commit message being added to it.
references, refs, addresses, re, see
The specified issue numbers are left in their current status, but the contents of this commit message are added to their notes.

Snapshot 2011-09
The 2011-09 snapshot has been released. See the release notes for details, but here is a quick summary of the changes between the this snapshot and the previous snapshot.

  • ASDF2 updated to version 2.017.
  • Improve type propagation for LOAD-TIME-VALUE.
  • Getting documentation of a structure via DOCUMENTATION no longer signals an error.
  • Reduce unnecessary consing of SAPs in ROOM.
  • Make stack overflow checking actually work on Mac OS X. The implementation had the :STACK-CHECKING feature, but it didn't actually prevent stack overflows from crashing lisp.
  • Fix rounding of numbers larger than a fixnum.
Snapshot 2011-08
There was no snapshot for this month.
Snapshot 2011-07
The 2011-07 snapshot has been released. See the release notes for details, but here is a quick summary of the changes between the this snapshot and the previous snapshot.
  • Unicode database updated to Unicode 6.0.0.
  • ASDF2 updated to version 2.016.1
  • Add LISP:LOAD-ALL-UNICODE-DATA to load all the unicode information into core. This is useful for creating an executable image that does not need unidata.bin.
  • CMUCL no longer exits if you specify a core file with an executable image. A warning is printed instead and the core file is used.
  • Trac #43 has been fixed in a better way. The previous fix was incorrect and causes some Unicode tests to fail.

Snapshot 2011-06
The 2011-06 snapshot has been released. See the release notes for details, but here is a quick summary of the changes between the this snapshot and the previous snapshot.
  • :CMUCL is now in *FEATURES*
  • Added command line option, -unidata, to allow user to specify the location and name of the unidata.bin file. This is used instead of the default location.
  • Opening a file whose name contains "[" with :IF-EXISTS :NEW-VERSION no longer causes an error.
Snapshot 2011-05
There was no snapshot in May, partly due to the ongoing upgrade on common-lisp.net.
Snapshot 2011-04
The 2011-04 snapshot has been released. See the release notes for details, but here is a quick summary of the changes between the this snapshot and the previous snapshot.
  • In COMPILE-FILE, the second return value is now non-nil if there are style warnings. Previously, style warnings were erroneously ignored.
  • ASDF has been updated to version 2.014.1
Snapshot 2011-03
The 2011-03 snapshot has been released. See the release notes for details, but here is a quick summary of the changes between the this snapshot and the previous snapshot.
  • In COMPILE-FILE, the :OUTPUT-FILE can also be a stream. CMUCL was erroneously signaling an error..
  • (OPEN f :DIRECTION :IO :IF-DOES-NOT-EXIST NIL) no longer signals an error if the file f does not exist. It returns NIL now.
  • In some situations the compiler could not constant fold SQRT calls because KERNEL:%SQRT was not defined on x86 with SSE2. This is fixed now.
  • In an earlier snapshot to add support for character name completion with Slime, a bug was introduced where cmucl could no longer read #\latin_small_letter_a. This is fixed in this version.
Snapshot 2011-02
The 2011-02 snapshot has been released. See the release notes for details, but here is a quick summary of the changes between the this snapshot and the previous snapshot.
  • EXT::DESCRIBE-EXTERNAL-FORMAT was not exported.
  • TRACE was erroneously allowing encapsulation when tracing local flet/labels functions. This doesn't actually trace anything. An error is now signaled in this case. If you are sure, you can specify :ENCAPSULATE NIL to disable encapsulation.
Snapshot 2011-01
The 2011-01 snapshot has been released. See the release notes for details, but here is a quick summary of the changes between the this snapshot and the previous snapshot.
  • Initial support for Solaris/x86. CMUCL will run on Solaris/x86 with all features available.
  • UNINTERN no longer removes the wrong symbol. UNINTERN would remove the symbol when inherited from another package although it should not.
  • DEFSTRUCT allows multiple keyword constructors as required by the spec..
  • SUBSEQ with an end index less than the start index sometimes crashes CMUCL. Now, signal an error if the boudns are not valid.
  • Localization support was causing many calls to stat trying to find non-existent translation files. This has been fixed so that the results are cached. (If new translations are added, the cache will need to be cleared or cmucl restarted.) This change cuts building time by half on Solaris/sparc.
  • On NetBSD, function-end breakpoints, especially for tail-recursive functions, are working now.
  • On NetBSD, display of FP numbers (sse2 and x87) during tracing has been corrected. Previously, random values were displayed.
  • Executables images can now be created on NetBSD again.
20b patch 000
A critical bug in REALPART and IMAGPART has been fixed in the 2010-11 snapshot. A patch is provided now to fix this issue in the 20b release. Installation instructions are available.
CMUCL 20b released
CMUCL 20b has been released, For information on the changes between 20b and 20a, we refer the reader to the 20b release notes.

Additional Information

The official web presence is at www.cons.org/cmucl with mirrors at www.cmucl.org and at common-lisp.net/project/cmucl/mirror

Other news can be found here.

Or you can look here to find out where to download binaries such as the 20b binaries or a snapshot.


Please read the TracGuide to help you get started with your project.

Also see http://common-lisp.net/trac-intro.shtml for some information about how Trac is configured and for hints which you may be interested in.

Enjoy!
The common-lisp.net maintainers

Starting Points

For a complete list of local wiki pages, see TitleIndex.