Smalltalk-80: the language and its implementation
Smalltalk-80: the language and its implementation
Computational reflection in class based object-oriented languages
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Metaobject protocols: why we want them and what else they can do
Object-oriented programming
Back to the future: the story of Squeak, a practical Smalltalk written in itself
Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The concept of dynamic analysis
ESEC/FSE-7 Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering
Implementational Reflection in Silica
ECOOP '91 Proceedings of the European Conference on Object-Oriented Programming
Design Patterns: Abstraction and Reuse of Object-Oriented Design
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
Supporting Unanticipated Dynamic Adaptation of Application Behaviour
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
AspectS - Aspect-Oriented Programming with Squeak
NODe '02 Revised Papers from the International Conference NetObjectDays on Objects, Components, Architectures, Services, and Applications for a Networked World
Partial behavioral reflection: spatial and temporal selection of reification
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Runtime bytecode transformation for Smalltalk
Computer Languages, Systems and Structures
Unanticipated partial behavioral reflection
ISC'06 Proceedings of the 14th international conference on Advances in smalltalk
A versatile kernel for multi-language AOP
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
On the revival of dynamic languages
SC'05 Proceedings of the 4th international conference on Software Composition
Aspects of composition in the reflex AOP kernel
SC'06 Proceedings of the 5th international conference on Software Composition
Safe metaclass composition using mixin-based inheritance
Computer Languages, Systems and Structures
Mirages: behavioral intercession in a mirror-based architecture
Proceedings of the 2007 symposium on Dynamic languages
Transactional memory for smalltalk
ICDL '07 Proceedings of the 2007 international conference on Dynamic languages: in conjunction with the 15th International Smalltalk Joint Conference 2007
Flexible metaprogramming and AOP in Java
Science of Computer Programming
Transactional memory in a dynamic language
Computer Languages, Systems and Structures
Change-Enabled Software Systems
Software-Intensive Systems and New Computing Paradigms
On the use of software models during software execution
MISE '09 Proceedings of the 2009 ICSE Workshop on Modeling in Software Engineering
Model-Centric, Context-Aware Software Adaptation
Software Engineering for Self-Adaptive Systems
Dynamic languages and applications: report on the workshop Dyla'07 at ECOOP 2007
ECOOP'07 Proceedings of the 2007 conference on Object-oriented technology
TOOLS'11 Proceedings of the 49th international conference on Objects, models, components, patterns
Spy: A flexible code profiling framework
Computer Languages, Systems and Structures
Proceedings of the ACM international symposium on New ideas, new paradigms, and reflections on programming and software
Hi-index | 0.00 |
Dynamic, unanticipated adaptation of running systems is of interest in a variety of situations, ranging from functional upgrades to on-the-fly debugging or monitoring of critical applications. In this paper we study a particular form of computational reflection, called unanticipated partial behavioral reflection (UPBR), which is particularly well suited for unanticipated adaptation of real-world systems. Our proposal combines the dynamicity of unanticipated reflection, i.e., reflection that does not require preparation of the code of any sort, and the selectivity and efficiency of partial behavioral reflection (PBR). First, we propose unanticipated partial behavioral reflection which enables the developer to precisely select the required reifications, to flexibly engineer the metalevel and to introduce the metabehavior dynamically. Second, we present a system supporting unanticipated partial behavioral reflection in Squeak Smalltalk, called GEPPETTO, and illustrate its use with a concrete example of a web application. Benchmarks validate the applicability of our proposal as an extension to the standard reflective abilities of Smalltalk.