While many of today's OODBs support multiple programming language interfaces (we term such systems multilingual), none provide transparent polylingual access to persistent data. Instead, present day interoperability mechanisms generally rely on external data definition languages (such as ODMG's ODL), thus reintroducing impedance mismatch and forcing developers to anticipate heterogeneity in their applications, or depend upon direct use of such low-level constructs as the foreign language interface mechanisms provided in individual programming languages. Using such mechanisms make polylingual access painful.
In this paper we introduce PolySPIN, an approach supporting polylingual persistence, interoperability and naming for object-oriented databases. We describe our current realization of PolySPIN as extensions to the TI/Arpa Open Object-Oriented Database and give examples demonstrating how our PolySPIN prototype supports transparent, painless polylingual access between C++ and CLOS applications.