Shadow Programming: Reasoning About Programs Using Lexical Join Point Information
- Cite this paper as:
- Wu P., Lieberherr K. (2005) Shadow Programming: Reasoning About Programs Using Lexical Join Point Information. In: Glück R., Lowry M. (eds) Generative Programming and Component Engineering. GPCE 2005. Lecture Notes in Computer Science, vol 3676. Springer, Berlin, Heidelberg
The expressiveness of AspectJ’s dynamic join point model has been shown in many useful applications, while the static join point model (also called lexical shadows) has been studied less. We propose a notion of shadow programming that exposes a program’s adapted lexical shadow information to compile time language constructs to enable customized static analysis and more expressive join point selection mechanisms. In particular, within the framework of the AspectJ language and compiler, we have designed and implemented two compile time language constructs, called Statically Executable Advice and Pointcut Evaluator respectively, to show how the lexical shadow information can be used.
Unable to display preview. Download preview PDF.