Using prototypical objects to implement shared behavior in object-oriented systems
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
The programming language jigsaw: mixins, modularity and multiple inheritance
The programming language jigsaw: mixins, modularity and multiple inheritance
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Making the future safe for the past: adding genericity to the Java programming language
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Featherweight Java: a minimal core calculus for Java and GJ
ACM Transactions on Programming Languages and Systems (TOPLAS)
Object-oriented composition untangled
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
More dynamic object reclassification: Fickle∥
ACM Transactions on Programming Languages and Systems (TOPLAS)
Smalltalk-80: The Language
Object-Oriented Multi-Methods in Cecil
ECOOP '92 Proceedings of the European Conference on Object-Oriented Programming
Dynamically Composable Collaborations with Delegation Layers
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
A Delegation-based Object Calculus with Subtying
FCT '95 Proceedings of the 10th International Symposium on Fundamentals of Computation Theory
Automated Delegation is a Viable Alternative to Multiple Inheritance in Class Based Languages
Automated Delegation is a Viable Alternative to Multiple Inheritance in Class Based Languages
Super and inner: together at last!
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Type safe dynamic object delegation in class-based languages
Proceedings of the 6th international symposium on Principles and practice of programming in Java
Towards safe and flexible object adaptation
International Workshop on Context-Oriented Programming
Using software product lines for runtime interoperability
Proceedings of the Workshop on AOP and Meta-Data for Software Evolution
Forsaking inheritance: supercharged delegation in DelphJ
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
Hi-index | 0.00 |
We present an extension for a Java like language with a mechanism for dynamically extending object behaviors. Our approach consists in moving the addition of new features from class (static) level to object (dynamic) level: the basic features of entities (representing their structure) are separated from the additional ones (wrapper classes whose instances represent run-time added behaviors). At run-time, these entities can be dynamically composed by instantiating wrapper objects which are attached to basic entities. We formalize our extension by adding the new constructs to Featherweight Java; the core language so extended (Featherweight Wrap Java) is type safe.