Submarine is a Common Lisp library that's somewhere between a PostgreSQL library and an object persistence system. It uses Postmodern to communicate with the database. The basic idea is that you create your classes in the metaclass DB-CLASS and submarine cares about creating SQL tables or, if the tables already exist, checking if they conform to the provided specification. Moreover, Submarine supports an intuitive way of expressing both one-to-many and many-to-many relations.

The author of Submarine is Ryszard Szopa.

The webpage of the project is