Advanced database applications demand new data modeling constructs beyond those available in relational databases. These include both new data structures, e.g. arrays and quadtrees, and an integration with the object-...
详细信息
Advanced database applications demand new data modeling constructs beyond those available in relational databases. These include both new data structures, e.g. arrays and quadtrees, and an integration with the object-orientedprogramming paradigm. Declarative object-oriented query languages transfer the burden of choosing an efficient execution plan to the database query optimizer. The lack of a generally accepted object-oriented data model and the trend towards extensible systems demand an extensible framework for object-oriented query optimization. We suggest such an algebraic optimization framework which is based on the computational metaphor of processing bulk data. Bulk data are defined using an abstract definition of the notion of data collection which includes familiar and novel types of bulk data. In particular, we integrate neatly object-oriented notions such as object identity and user-defined methods. To obtain generally applicable results, we use an FP-like language in which programs are constructed from primitive functions using a fixed set of functional forms. The latter abstract common patterns of processing data collections. The resulting algebra of programs generalizes for any data collection the known laws for transforming relational queries. We go beyond FP by allowing data structures containing functions, thus supporting the optimization of programs required in database programming environments.
The Chorus object-oriented Layer (COOL) is an extension of the facilities provided by the Chorus distributed operating system with additional functionality for the support of object-oriented environments. This functio...
详细信息
ISBN:
(纸本)9780897914116
The Chorus object-oriented Layer (COOL) is an extension of the facilities provided by the Chorus distributed operating system with additional functionality for the support of object-oriented environments. This functionality is realized by a layer built on top of the Chorus V3 Nucleus, which extends the Chorus interface with generic functions for object management: creation, deletion, storage, remote invocation and migration. One major goal of this approach was to explore the feasibility of general object management at the kernel level, with support of multiple object models at a higher level. We present the implementation of COOL and a first evaluation of this approach with a C++ environment using the COOL mechanisms.
Providing the financial engineering community with adequate software tools presents several challenges to application developers. Experience shows that reusability-oriented software development as supported by object ...
详细信息
ISBN:
(纸本)0897915399
Providing the financial engineering community with adequate software tools presents several challenges to application developers. Experience shows that reusability-oriented software development as supported by object technology has the potential to meet these challenges. To back the argument, a project of building a pilot implementation of a swap valuation system using a comprehensive class library including an application framework is reported. As a novelty the project emphasized the use of so-called design patterns. The project experience suggests that the use of design patterns significantly eases the application of a large class library and facilitates the reuse of design.
In previous work, we presented rules for defining overloaded functions that ensure type safety under symmetric multiple dispatch in an object-oriented language with multiple inheritance, and we showed how to check the...
详细信息
ISBN:
(纸本)9781450309400
In previous work, we presented rules for defining overloaded functions that ensure type safety under symmetric multiple dispatch in an object-oriented language with multiple inheritance, and we showed how to check these rules without requiring the entire type hierarchy to be known, thus supporting modularity and extensibility. In this work, we extend these rules to a language that supports parametric polymorphism on both classes and functions. In a multiple-inheritance language in which any type may be extended by types in other modules, some overloaded functions that might seem valid are correctly rejected by our rules. We explain how these functions can be permitted in a language that additionally supports an exclusion relation among types, allowing programmers to declare "nominal exclusions" and also implicitly imposing exclusion among different instances of each polymorphic type. We give rules for computing the exclusion relation, deriving many type exclusions from declared and implicit ones. We also show how to check our rules for ensuring the safety of overloaded functions. In particular, we reduce the problem of handling parametric polymorphism to one of determining subtyping relationships among universal and existential types. Our system has been implemented as part of the open-source Fortress compiler.
Subjectivity in object-orientedsystems is a relatively new research area. At this, the second workshop in this area, discussion surrounded applications, principles, and implementation strategies. The discussions are ...
详细信息
ISBN:
(纸本)0897917219
Subjectivity in object-orientedsystems is a relatively new research area. At this, the second workshop in this area, discussion surrounded applications, principles, and implementation strategies. The discussions are summarized here.
暂无评论