ABSTRACT

We want to introduce in the Eiffel language [Meyer 88], a powerful management of persistent objects. In [Lahire 90], we presented an approach allowing persistent object handling without changing language expressivness, or reusability and extendibility of Eiffel components. In this paper, we propose a mechanism allowing persistent object selection and manipulation through high-level selection criteria; this mechanism emphasizes transparency and flexibility. Thanks to objects of type sub- environment, it is possible to build logical sets of persistent objects; this favours flexibility and object sharing. Transparency is achieved through the automatic generation of a class (notion of virtual class), implementing the How of a query and taking into account optimization problems. The connection between application and query is done through the use of an Eiffel interpretor [Brissi 90], (allowing compiled and interpreted classes to live together), for the translation of the virtual class. This research is done in the framework of the Business Class Esprit II project which aims to develop Eiffel advanced applications in the business area. Key-Words: Eiffel, persistent object, virtual class, sub-environment, interpretor, query, dynamic linking