Next: , Previous: Top, Up: Top

1 Introduction

Elephant is a persistent object database for Common Lisp that supports storing CLOS objects and most lisp primitives. It supports persistent collections via a BTree interface.

Elephant was originally developed as an interface layer on top of the Sleepycat / Berkeley DB library, a widely-distributed embedded database. Many unix systems have it installed by default. Berkeley DB is ACID compliant, transactional, process and thread safe, and fast relative to relational databases. Recently, Elephant was extended to provide support for relational database backends. It has been tested with Postgres and SQLite 3. It supports, with some care, simultaneous multi-repository operation and enables convenient migration of data between repositories.

The support for relational backends and migration to the LLGPL was to allow for broader use of Elephant in both not-for-profit and commercial settings.

Elephant goals:

Join the Elephant mailing lists to ask your questions and receive updates. Pointers can be found on the Elephant website at

Installation documents can be found in the file INSTALL. Opportunities to contribute can be found in the file TODO.