A language for specifying recursive traversals of object structures
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns
Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns
Scrap your boilerplate: a practical design pattern for generic programming
Proceedings of the 2003 ACM SIGPLAN international workshop on Types in languages design and implementation
Strategic programming meets adaptive programming
Proceedings of the 2nd international conference on Aspect-oriented software development
Advanced Functional Programming, Second International School-Tutorial Text
Traversals of object structures: Specification and Efficient Implementation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Improve pointcut definitions with program views
Proceedings of the 5th workshop on Software engineering properties of languages and aspect technologies
Transformation of structure-shy programs: applied to XPath queries and strategic functions
Proceedings of the 2007 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
A type system for functional traversal-based aspects
Proceedings of the 2009 workshop on Foundations of aspect-oriented languages
SSDGP'06 Proceedings of the 2006 international conference on Datatype-generic programming
Demeter interfaces: adaptive programming without surprises
ECOOP'06 Proceedings of the 20th European conference on Object-Oriented Programming
Managing the evolution of aspect-oriented software with model-based pointcuts
ECOOP'06 Proceedings of the 20th European conference on Object-Oriented Programming
Reusable enterprise metadata with pattern-based structural expressions
Proceedings of the 9th International Conference on Aspect-Oriented Software Development
Hi-index | 0.00 |
Adaptive programming (AP) is a programming paradigm for expressing structure-shy computations over semi-structured data graphs. Structure-shyness means that adaptive programs hard code a minimal set of assumptions about the structure of their input. Because of this, adaptive programs are more susceptible to unsafe evolutions; evolutions that jeopardize the correctness of adaptive programs yet go uncaught. In this paper we study the evolution of adaptive programs and present two complementary approaches for controlling their unsafe evolution: a language for expressing application-specific constraints on the runtime behavior of adaptive programs, and a stricter notion of compatibility between the parts of an adaptive program, that does not sacrifice the expressiveness of the AP paradigm.