Reconciling environment integration and software evolution
ACM Transactions on Software Engineering and Methodology (TOSEM)
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
A syntactic approach to type soundness
Information and Computation
Reasoning about implicit invocation
SIGSOFT '98/FSE-6 Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
Aspect-oriented programming: Introduction
Communications of the ACM
Principles of Program Analysis
Principles of Program Analysis
An Event-Based Architecture Definition Language
IEEE Transactions on Software Engineering
Proceedings of the 2nd international conference on Aspect-oriented software development
Conquering aspects with Caesar
Proceedings of the 2nd international conference on Aspect-oriented software development
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Adding Implicit Invocation to Languages: Three Approaches
Proceedings of the First JSSST International Symposium on Object Technologies for Advanced Software
A Formal Definition of Crosscuts
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
Formalizing Design Spaces: Implicit Invocation Mechanisms
VDM '91 Proceedings of the 4th International Symposium of VDM Europe on Formal Software Development-Volume I: Conference Contributions - Volume I
Eos: instance-level aspects for integrated system design
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
AspectJ in Action: Practical Aspect-Oriented Programming
AspectJ in Action: Practical Aspect-Oriented Programming
Aspect language features for concern coverage profiling
Proceedings of the 4th international conference on Aspect-oriented software development
Classpects: unifying aspect- and object-oriented language design
Proceedings of the 27th international conference on Software engineering
Information hiding interfaces for aspect-oriented design
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Using Pointcut Delta Analysis to Support Evolution of Aspect-Oriented Software
ICSM '05 Proceedings of the 21st IEEE International Conference on Software Maintenance
Modular Software Design with Crosscutting Interfaces
IEEE Software
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A join point for loops in AspectJ
Proceedings of the 5th international conference on Aspect-oriented software development
The paradoxical success of aspect-oriented programming
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
MiniMAO1: an imperative core language for studying aspect-oriented reasonings
Science of Computer Programming - Special issue: Foundations of aspect-oriented programming
Aspect-oriented software development
Aspect-oriented software development
Open modules: modular reasoning about advice
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Separation of concerns with procedures, annotations, advice and pointcuts
ECOOP'05 Proceedings of the 19th 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
MAO: ownership and effects for more effective reasoning about aspects
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
Tisa: A Language Design and Modular Verification Technique for Temporal Policies in Web Services
ESOP '09 Proceedings of the 18th European Symposium on Programming Languages and Systems: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
EventJava: An Extension of Java for Event Correlation
Genoa Proceedings of the 23rd European Conference on ECOOP 2009 --- Object-Oriented Programming
Modular aspect-oriented design with XPIs
ACM Transactions on Software Engineering and Methodology (TOSEM)
Implicit invocation meets safe, implicit concurrency
GPCE '10 Proceedings of the ninth international conference on Generative programming and component engineering
Enabling expressive aspect oriented modular reasoning by translucid contracts
Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
Reconciling concurrency and modularity with Panini's asynchronous typed events
Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
Translucid contracts for modular reasoning about aspect-oriented programs
Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
Weaving the fabric of the control loop through aspects
SOAR'09 Proceedings of the First international conference on Self-organizing architectures
Building scalable software systems in the multicore era
Proceedings of the FSE/SDP workshop on Future of software engineering research
Event-specific software composition in context-oriented programming
SC'10 Proceedings of the 9th international conference on Software composition
Proceedings of the tenth international conference on Aspect-oriented software development
EScala: modular event-driven object interactions in scala
Proceedings of the tenth international conference on Aspect-oriented software development
Putting events in context: aspects for event-based distributed programming
Proceedings of the tenth international conference on Aspect-oriented software development
Modularizing crosscutting concerns with Ptolemy
Proceedings of the tenth international conference on Aspect-oriented software development companion
Applying translucid contracts for modular reasoning about aspect and object oriented events
Proceedings of the 10th international workshop on Foundations of aspect-oriented languages
Automated selective caching for reference attribute grammars
SLE'10 Proceedings of the Third international conference on Software language engineering
An evaluation of the adaptation capabilities in programming languages
Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
Program analysis for event-based distributed systems
Proceedings of the 5th ACM international conference on Distributed event-based system
A sequence of patterns for reusable aspect libraries with easy configuration
SC'11 Proceedings of the 10th international conference on Software composition
A system of patterns for reusable aspect libraries
Transactions on aspect-oriented software development VIII
Modularizing crosscutting concerns with ptolemy
Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
Proceedings of the 3rd International Workshop on Context-Oriented Programming
JavaCtx: seamless toolchain integration for context-oriented programming
Proceedings of the 3rd International Workshop on Context-Oriented Programming
Modularity analysis of use case implementations
Journal of Systems and Software
Proceedings of the eleventh workshop on Foundations of Aspect-Oriented Languages
Proceedings of the eleventh workshop on Foundations of Aspect-Oriented Languages
An exploratory study of the design impact of language features for aspect-oriented interfaces
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
ContextErlang: introducing context-oriented programming in the actor model
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
Scalable efficient composite event detection
COORDINATION'10 Proceedings of the 12th international conference on Coordination Models and Languages
Supporting methods and events by an integrated abstraction
Proceedings of the 9th ECOOP Workshop on Reflection, AOP, and Meta-Data for Software Evolution
Abstracting context in event-based software
Transactions on Aspect-Oriented Software Development IX
Reactive behavior in object-oriented applications: an analysis and a research roadmap
Proceedings of the 12th annual international conference on Aspect-oriented software development
Aggregation for implicit invocations
Proceedings of the 12th annual international conference on Aspect-oriented software development
On exceptions, events and observer chains
Proceedings of the 12th annual international conference on Aspect-oriented software development
Method slots: supporting methods, events, and advices by a single language construct
Proceedings of the 12th annual international conference on Aspect-oriented software development
A design rule language for aspect-oriented programming
Journal of Systems and Software
Language features for software evolution and aspect-oriented interfaces: an exploratory study
Transactions on Aspect-Oriented Software Development X
Join point interfaces for safe and flexible decoupling of aspects
ACM Transactions on Software Engineering and Methodology (TOSEM)
Hi-index | 0.01 |
Implicit invocation (II) and aspect-oriented (AO) languages provide related but distinct mechanisms for separation of concerns. II languages have explicitly announced events that run registered observer methods. AO languages have implicitly announced events that run method-like but more powerful advice. A limitation of II languages is their inability to refer to a large set of events succinctly. They also lack the expressive power of AO advice. Limitations of AO languages include potentially fragile dependence on syntactic structure that may hurt maintainability, and limits on the available set of implicit events and the reflective contextual information available. Quantified, typed events, as implemented in our language Ptolemy, solve all these problems. This paper describes Ptolemy and explores its advantages relative to both II and AO languages.