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
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Roles: conceptual abstraction theory and practical language issues
Theory and Practice of Object Systems - Special issue on subjectivity in object-oriented systems
On the representation of roles in object-oriented and conceptual modelling
Data & Knowledge Engineering
Featherweight Java: a minimal core calculus for Java and GJ
ACM Transactions on Programming Languages and Systems (TOPLAS)
Types and programming languages
Types and programming languages
Information and Computation - FOOL V
Design pattern implementation in Java and aspectJ
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Object-Oriented Multi-Methods in Cecil
ECOOP '92 Proceedings of the European Conference on Object-Oriented Programming
Type-Safe Delegation for Run-Time Component Adaptation
ECOOP '99 Proceedings of the 13th 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
Method driven model: a unified model for an object composition language
ACM SIGPLAN Notices
Identifying traits with formal concept analysis
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Traits: A mechanism for fine-grained reuse
ACM Transactions on Programming Languages and Systems (TOPLAS)
Language features meet design patterns: raising the abstraction bar
Proceedings of the 2nd international workshop on The role of abstraction in software engineering
A trait based re-engineering technique for Java hierarchies
Proceedings of the 6th international symposium on Principles and practice of programming in Java
Type safe dynamic object delegation in class-based languages
Proceedings of the 6th international symposium on Principles and practice of programming in Java
A precise model for contextual roles: The programming language ObjectTeams/Java
Applied Ontology - Roles, an interdisciplinary perspective
ISC'06 Proceedings of the 14th international conference on Advances in smalltalk
Delegation by object composition
Science of Computer Programming
Dynamic delta-oriented programming
Proceedings of the 15th International Software Product Line Conference, Volume 2
Object reuse and behavior adaptation in Java-like languages
Proceedings of the 9th International Conference on Principles and Practice of Programming in Java
Hi-index | 0.00 |
Object composition is often advocated as a more flexible alternative to standard class inheritance since it takes place at run-time, thus permitting the behavior of objects to be specialized dynamically. In this paper we present I-Java, an extension of the Java language with a form of incomplete objects, i.e., objects with some missing methods which can be provided at run-time by composition with another (complete) object. Therefore, we can exploit object composition as a linguistic construct, instead of resorting to a manual implementation. This work builds on our theoretical model of incomplete objects, which was proved type-safe.