Abstract

The concept of an object-oriented database programming language (OODBPL) is appealing because it has the potential of combining the advantages of object orientation and database programming to yield a powerful and universal programming language design. A uniform and consistent combination of object orientation and database programming, however, is not straightforward. Since one of the main components of an object-oriented programming language is its type system, one of the first problems that arise during an OODBPL design is related to the development of a uniform, consistent, and theoretically sound type system that is sufficiently expressive to satisfy the combined needs of object orientation and database programming. This dissertation presents the design of a type system suitable for object-oriented database programming. The type system has a unique combination of uniformity, expressibility, verifiability, and theoretically proven soundness. It also possesses features that make it suitable for database programming, such as seamless integration of imperative types and features, precise query typing via union and intersection types, separation among three abstraction layers providing a high degree of code reuse, parametric polymorphism, extensibility, and dynamic type analysis capabilities. In the process of type system development, a theoretical framework for dealing with type systems that combine parametric and inclusion polymorphism is established. Due to its modular construction, this framework can be easily extended and used beyond the scope of this dissertation. Another contribution of this work is an extensive analysis of existing and proposed type systems from the point of view of the set of requirements related to object orientation and database programming. This research leads to the development of a uniform and theoretically sound OODBPL that can successfully utilize the power inherent in both object orientation and database programming paradigms. This will eventually lead to the development and implementation of a uniform object-oriented database system that will use the OODBPL as its main programming and query engine.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call