August 30th, 2004

(no subject)

Just when I was starting to think about persistence, along comes Elephant, a Lisp persistence system based on Sleepycat.
Goals:
  • Transparency: most Lisp values are easy to persist without much effort or special syntax. Talk to the DB with Lisp code, not SQL or another domain-specific language. No additional server to run.
  • Safety: ACID, transactions. Concurrent with good multi-user and -thread semantics / isolation, locking and deadlock detection.
  • Simplicity: be a small library with few surprises for the programmer. Lisp and Berkeley DB together are an excellent substrate, try to use their features as much as possible.
  • Performance: leverage Sleepycat performance and reliability. In addition to fast concurrent / transactional modes, elephant will (eventually) offer an accellerated single-user mode.

Also, Christophe Rhodes has some very preliminary Unicode work going in SBCL.

Plus Nikodemus Siivola is working on linkage tables for SBCL.

So, a lot of really good recent developments.