Featherweight Java: a minimal core calculus for Java and GJ
ACM Transactions on Programming Languages and Systems (TOPLAS)
Types and programming languages
Types and programming languages
Java Language Specification, Second Edition: The Java Series
Java Language Specification, Second Edition: The Java Series
A case for statically executable advice: checking the law of demeter with AspectJ
Proceedings of the 2nd international conference on Aspect-oriented software development
Arranging language features for more robust pattern-based crosscuts
Proceedings of the 2nd international conference on Aspect-oriented software development
LICS '02 Proceedings of the 17th Annual IEEE Symposium on Logic in Computer Science
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
abc: an extensible AspectJ compiler
Proceedings of the 4th international conference on Aspect-oriented software development
Proceedings of the 2006 ACM SIGPLAN workshop on Generic programming
A static aspect language for checking design rules
Proceedings of the 6th international conference on Aspect-oriented software development
SCoPE: an AspectJ compiler for supporting user-defined analysis-based pointcuts
Proceedings of the 6th international conference on Aspect-oriented software development
Typed parametric polymorphism for aspects
Science of Computer Programming - Special issue: Foundations of aspect-oriented programming
MiniMAO1: an imperative core language for studying aspect-oriented reasonings
Science of Computer Programming - Special issue: Foundations of aspect-oriented programming
A compilation and optimization model for aspect-oriented programs
CC'03 Proceedings of the 12th international conference on Compiler construction
Expressive pointcuts for increased modularity
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
Test-based pointcuts for robust and fine-grained join point specification
Proceedings of the 7th international conference on Aspect-oriented software development
Hi-index | 0.00 |
Pointcuts in the current AspectJ family of languages are loosely checked because the languages allow compositions of pointcuts that never match any join points, which developers are unlikely to intend, for example, set (* *)&&get (* *). We formalize the problem by defining well-formedness of pointcuts and design a novel type system for assuring well-formedness. The type of pointcuts is encoded by using record, union and the bottom types.