Common Lisp ships with a set of powerful built in data structures including the venerable list, full featured arrays, and hash-tables. CL-containers enhances and builds on these structures in two ways:
By adding containers that are not available in native Lisp (for example: binary search trees, red-black trees, sparse arrays and so on).
By providing a standard interface so that they are simpler to use and so that changing design decisions becomes significantly easier.
Here is a slightly crazy picture of the class hierarchy for containers and for generators. These are PDFs.
metabang.com is switching from darcs to git for source control; the current cl-containers repository is on github and you can clone it using:
git clone git://github.com/gwkkwg/cl-containers
(note that you'll also need to get metatilities-base and Moptilities to get CL-Containers to work).
git clone git://github.com/gwkkwg/cl-containers
CL-Containers (and friends) should also be ASDF installable. Its CLiki home is right where you'd expect.
There's also a handy gzipped tar file.
21 December 2010 Moved to git. Minor cleanup. Absolutely nothing exciting. sigh.
24 October 2007 Lots of little updates between then and now.
25 Nov 2005 Wrote a mini tutorial and published it on unCLog.
14 Nov 2005 Added links, tarball, etc.
10 Nov 2005 Small patches and corrections; links to the mailing list. Nothing exciting
4 Nov 2005 OK. I changed my mind aboust waiting for ASDF. CL-Containers is ready for a release. Things are pretty weak-around-the-knees however, so the release party planned on Carnival Cruise Lines has been canceled. Sorry.
Today, I hope to add CLiki pages for CL-Containers and two other bits of code it relies on: Metatilities and Moptilities. I'll also finish with the darcs repositories, and have things ASDF installable. If I'm lucky, it'll actually work!
6 Oct 2005 I've decided to get cl-containers out without worrying about ASDF. This means I should be able to stick what's needed up on the web site by the end of this week (oh, oh, I've almost made a commitment). This includes:
Most of this will be released using the MIT license although some of the code comes from long ago and far away and has it's own (quite unrestrictive) license. Once I've released, lots of good stuff will remain to do (asdf, testing, making sure it's platform compliant, etc). As always, stay tuned.
5 Oct 2005 I've got most of cl-containers under darcs now and split away from various unneccesary dependencies of the rest of my code. The next steps are:
If things go moderately then "real soon now" may actually occur "real soon". Thanks for your patience.
29 July 2005 I'm in the process of converting cl-containers from a home grown defsystem to ASDF, of cleaning up some unnecessary dependencies and of trying to create a bit of documentation. I hope to have cl-containers up in some form real soon now. You can drop me e-mail if you're interested, would like to help or want to be notified when the code actually appears up here!