The main topic of this paper is multiple inheritance and conflict resolution methods in objectorientedprogramming. Our aim is to develop sound mechanisms easily understandable to any user. For this purpose, coherent...
详细信息
ISBN:
(纸本)0897915399
The main topic of this paper is multiple inheritance and conflict resolution methods in objectorientedprogramming. Our aim is to develop sound mechanisms easily understandable to any user. For this purpose, coherent behaviors of conflict resolution methods for multiple inheritance (such as supporting incrementality-monotonicity and stability under link subdivision) are introduced. We present interesting examples in which multiple inheritance known linearization algorithms (such as in CLOS and LOOPS) behave badly. Then we carefully study the conditions (on the inheritance graph) which assure good linearizations. We end with some suggestions for an incremental inheritance algorithm.
Adaptive programming allows developers to write structureshy programs. However, in Adaptive programming, recursive computations are known to require a good deal of boiler plate code to express. This paper describes pe...
详细信息
ISBN:
(纸本)9781595938657
Adaptive programming allows developers to write structureshy programs. However, in Adaptive programming, recursive computations are known to require a good deal of boiler plate code to express. This paper describes perobject visitors; a programming construct that allows developers to write recursive adaptive computations at a higher level of abstraction. This paper also describes a prototype implementation for perobject visitors.
Web applications exemplify the need for generative programmingtechniques in part due to the many languages, artifacts, and groups of developers involved. Some problems remain, including those that that arise from the ...
详细信息
ISBN:
(纸本)9781595938657
Web applications exemplify the need for generative programmingtechniques in part due to the many languages, artifacts, and groups of developers involved. Some problems remain, including those that that arise from the interplay with versioning. This paper proposes addressing these problems with structured program transformations, and explores a framework for the co-evolution of platform artifacts and the models that generate them.
Two important problems of object-oriented reuse are the propagation of design and implementation specifics of the base software to the inheritors, and the protection of the inheritors against changes in the base softw...
详细信息
Two important problems of object-oriented reuse are the propagation of design and implementation specifics of the base software to the inheritors, and the protection of the inheritors against changes in the base software. In this paper, we argue that the simple inheritance rules of existing object-orientedlanguages are not sufficient for properly dealing with these problems. In the proposal presented in this paper, programmers are enabled to make metalevel declarations of the internal protocols and dependencies of their classes. Additionally, changes of the base module are automatically monitored to filter out information about the alterations that may invalidate already existing inheritors. Based on these informations, the subclassing semantics is adjusted such that the maintenance of the base module properties and the protection of the inheritor is ensured during their integration. In this way, language support is provided for keeping the behavior of reusable software consistent during its evolution.
暂无评论