persistence

Historical interest: MetaStore (1992)

An early implementation of persistent objects in Common Lisp (via the MOP) is detailed in The Persistent Object System MetaStore (PDF). This PCL-based system "uses the metaprogramming facilities of the metaobject protocol to add persistence to the Common Lisp Object System. This approach leaves the semantics of CLOS unchanged, requires only minimal syntactic changes to existing programs, and needs no compiler support. In the resulting language, programmers can define both classes and slots to be persistent. MetaStore then handles persistence at the metaobject level."