Object-oriented programming with flavors
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
Programming from specifications (2nd ed.)
Programming from specifications (2nd ed.)
A behavioral notion of subtyping
ACM Transactions on Programming Languages and Systems (TOPLAS)
Forcing behavioral subtyping through specification inheritance
Proceedings of the 18th international conference on Software engineering
The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
Modular object-oriented programming with units and mixins
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Introduction to algorithms
ACM Transactions on Software Engineering and Methodology (TOSEM)
Refinement Calculus: A Systematic Introduction
Refinement Calculus: A Systematic Introduction
Reasoning and Refinement in Object-Oriented Specification Languages
ECOOP '92 Proceedings of the European Conference on Object-Oriented Programming
A Study of The Fragile Base Class Problem
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
Class Refinement and Interface Refinement in Object-Oriented Programs
FME '97 Proceedings of the 4th International Symposium of Formal Methods Europe on Industrial Applications and Strengthened Foundations of Formal Methods
Towards a Calculus of Data Refinement
Proceedings of the International Conference on Mathematics of Program Construction, 375th Anniversary of the Groningen University
Designing an Object-Oriented Programming Language with Behavioural Subtyping
Proceedings of the REX School/Workshop on Foundations of Object-Oriented Languages
Enhancing Object-Based System Composition through Per-Object Mixins
APSEC '99 Proceedings of the Sixth Asia Pacific Software Engineering Conference
Jam---designing a Java extension with mixins
ACM Transactions on Programming Languages and Systems (TOPLAS)
Traits: A mechanism for fine-grained reuse
ACM Transactions on Programming Languages and Systems (TOPLAS)
Stateful traits and their formalization
Computer Languages, Systems and Structures
Hi-index | 0.00 |
A dynamic mixin is a code fragment that is meant to be dynamically bound to an object. Dynamic mixins support more flexible code composition than class inheritance and can be used to implement roles that objects acquire dynamically. We propose a theory, based on data refinement, for reasoning about the correctness of programs with mixins. The theory is suited for applications of mixins to intrusive data structures, where the data structure is spread over existing objects. We illustrate this with two examples, one-to-one association and union-find data structures.