LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
Implicit context: easing software evolution and reuse
SIGSOFT '00/FSE-8 Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications
Aspect-oriented programming: Introduction
Communications of the ACM
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
ICFP '03 Proceedings of the eighth ACM SIGPLAN international conference on Functional programming
What are the key issues for commercial AOP use: how does AspectWerkz address them?
Proceedings of the 3rd international conference on Aspect-oriented software development
An expressive aspect language for system applications with Arachne
Proceedings of the 4th international conference on Aspect-oriented software development
Aspect language features for concern coverage profiling
Proceedings of the 4th international conference on Aspect-oriented software development
Adding trace matching with free variables to AspectJ
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A join point for loops in AspectJ
Proceedings of the 5th international conference on Aspect-oriented software development
Bugdel: An Aspect-Oriented Debugging System
APSEC '05 Proceedings of the 12th Asia-Pacific Software Engineering Conference
Proceedings of the 7th international conference on Aspect-oriented software development
A pointcut-based assertion for high-level hardware design
Proceedings of the 2008 AOSD workshop on Aspects, components, and patterns for infrastructure software
The art of the meta-aspect protocol
Proceedings of the 8th ACM international conference on Aspect-oriented software development
Proceedings of the 8th workshop on Aspects, components, and patterns for infrastructure software
Recognizing join points from their context through graph grammars
Proceedings of the 13th workshop on Aspect-oriented modeling
Supporting dynamic aspect-oriented features
ACM Transactions on Software Engineering and Methodology (TOSEM)
Late binding of AspectJ advice
TOOLS'10 Proceedings of the 48th international conference on Objects, models, components, patterns
Closure joinpoints: block joinpoints without surprises
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
EventCJ: a context-oriented programming language with declarative event-based context transition
Proceedings of the tenth 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
Hierarchical concern-based pointcuts
Proceedings of the 8th international workshop on Advanced modularization techniques
Fine-grained annotations for pointcuts with a finer granularity
Proceedings of the 28th Annual ACM Symposium on Applied Computing
Hi-index | 0.00 |
We propose a new join point model for aspect-oriented programming (AOP) languages. In most AOP languages including AspectJ, a join point is a time interval of an action in execution. While those languages are widely accepted, they have problems in aspects reusability, and awkwardness when designing advanced features such as tracematches. Our proposed join point model, namely the point-in-time join point model redefines join points as the moments both at the beginning and end of actions. Those finer-grained join points enable us to design AOP languages with better reusability and flexibility of aspects. In this paper, we designed an AspectJ-like language based on the point-in-time model. We also give a denotational semantics of a simplified language in a continuation passing style, and demonstrate that we can straightforwardly model advanced language features such as exception handling and cflow pointcuts.