As of Dec. 5, 2005, Elephant has been tested with BerkeleyDB, SQLite3, and Postgres, and allows seamless migration of data between those repositories. For a while it did not work with Unicode enabled SBCL versions, but that has now been fixed.
Download ASDF package from http://common-lisp.net/project/elephant/dist/elephant-0.9.tar.gz
If you want to modify the value in a slot which doesn't hold a persistent object, just set the whole slot. Because otherwise the updated slot won't be stored in the DB. Here's an example:
;; Wrong -- the DB won't update
(setf (first (slot1 my-persistent-object))
'foo)
;; Ok
(setf (slot1 my-persistent-object)
(cons 'foo (rest (slot1 my-persistent-object))))
This page is linked from: Ben Lee CommonLispPrevalence Wish List
CLiki pages can be edited by anyone at any time. Imagine a fearsomely comprehensive disclaimer of liability. Now fear, comprehensively