The art of metaobject protocol
The art of metaobject protocol
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
A third-generation SELF implementation: reconciling responsiveness with performance
OOPSLA '94 Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications
Object-oriented reflection and metalevel architectures {fourth annual}
OOPSLA '93 Addendum to the proceedings on Object-oriented programming systems, languages, and applications (Addendum)
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
On the criteria to be used in decomposing systems into modules
Communications of the ACM
Communications of the ACM
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
Inside C#
The Java Language Specification
The Java Language Specification
ECOOP'98 Workshop on Reflective Object-Oriented Programming and Systems
ECOOP '98 Workshop ion on Object-Oriented Technology
Aspect-Oriented Programming in Smalltalk
Proceedings of the Workshop on Object-Oriented Technology
Advanced Separation of Concerns
ECOOP '01 Proceedings of the Workshops on Object-Oriented Technology
Adaptive Object-Models and Metamodeling Techniques
ECOOP '01 Proceedings of the Workshops on Object-Oriented Technology
Reflection and semantics in LISP
POPL '84 Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
MetaJava: an efficient run-time meta architecture for Java/sup TM/
IWOOOS '96 Proceedings of the 5th International Workshop on Object Orientation in Operating Systems (IWOOOS '96)
Adaptation in current e-learning systems
Computer Standards & Interfaces
Proceedings of the 7th international conference on Aspect-oriented software development
A decision tree-based approach to dynamic pointcut evaluation
Proceedings of the 2nd Workshop on Virtual Machines and Intermediate Languages for emerging modularization mechanisms
Efficient virtual machine support of runtime structural reflection
Science of Computer Programming
Supporting dynamic aspect-oriented features
ACM Transactions on Software Engineering and Methodology (TOSEM)
An aspect-oriented approach for mobile embedded software modeling
ICCSA'10 Proceedings of the 2010 international conference on Computational Science and Its Applications - Volume Part II
Efficient support of dynamic inheritance for class- and prototype-based languages
Journal of Systems and Software
A performance cost evaluation of aspect weaving
ACSC '13 Proceedings of the Thirty-Sixth Australasian Computer Science Conference - Volume 135
A hybrid class- and prototype-based object model to support language-neutral structural intercession
Information and Software Technology
Hi-index | 0.00 |
In today's fast changing environments, adaptability has become an important feature in modern computing systems, programming languages and software engineering methods. Different approaches and techniques are used to achieve the development of adaptable systems. Following the principle of separation of concerns, aspect-oriented programming (AOP) distinguishes application functional code from specific concerns that cut across the system, creating the final application by weaving the program's main code and its specific aspects. In many cases, dynamic application adaptation is needed, but few existing AOP tools offer it in a limited way. Moreover, these tools use a fixed programming language: aspects cannot be implemented regardless of its programming language.We identify reflection as a mechanism capable of overcoming the deficiencies previously mentioned. We have developed a nonrestrictive reflective technique that achieves a real computational-environment jump, making every application and language feature adaptable at runtime--without any previously defined restriction. Moreover, our reflective platform is independent of the language selected by the programmer. Using the reflective capabilities of the platform presented, an AOP framework that achieves dynamic aspect weaving in a language-independent way has been constructed, overcoming the common limitations of existing AOP tools.