Semantical considerations on nonmonotonic logic
Artificial Intelligence
Applications of circumscription to formalizing common-sense knowledge
Artificial Intelligence
Nonmonotonic reasoning, preferential models and cumulative logics
Artificial Intelligence
General patterns in nonmonotonic reasoning
Handbook of logic in artificial intelligence and logic programming (vol. 3)
Reasoning about priorities in default logic
AAAI'94 Proceedings of the twelfth national conference on Artificial intelligence (vol. 2)
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
Program fragments, linking, and modularization
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
ACM Computing Surveys (CSUR)
On the criteria to be used in decomposing systems into modules
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
Concepts and paradigms of object-oriented programming
ACM SIGPLAN OOPS Messenger
Featherweight Java: a minimal core calculus for Java and GJ
ACM Transactions on Programming Languages and Systems (TOPLAS)
An argument-based approach to reasoning with specificity
Artificial Intelligence
Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory
Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
A Modular Approach to Denotational Semantics
Proceedings of the 4th International Conference on Category Theory and Computer Science
Complexity of argument-based default reasoning with specificity
AI Communications
A semantics for advice and dynamic join points in aspect-oriented programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
Verifying aspect advice modularly
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
Aspect-oriented programming and modular reasoning
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
Well-founded semantics for extended logic programs with dynamic preferences
Journal of Artificial Intelligence Research
MAVEN: modular aspect verification
TACAS'07 Proceedings of the 13th international conference on Tools and algorithms for the construction and analysis of systems
Open modules: modular reasoning about advice
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Enforcing behavioral constraints in evolving aspect-oriented programs
Proceedings of the 7th workshop on Foundations of aspect-oriented languages
Model-driven development for early aspects
Information and Software Technology
Modular aspect-oriented design with XPIs
ACM Transactions on Software Engineering and Methodology (TOSEM)
The road to feature modularity?
Proceedings of the 15th International Software Product Line Conference, Volume 2
Revisiting information hiding: reflections on classical and nonclassical modularity
Proceedings of the 25th European conference on Object-oriented programming
Hi-index | 0.00 |
There has been a lot of debate about the modularity of aspect-oriented programs, and in particular the ability to reason about such programs in a modular way, although it has never been defined precisely what modular reasoning means. This work analyzes what it means to reason about a program, and separates "modular reasoning" into several well-defined properties of a reasoning model. A comparison of an OO language semantics with an AO language semantics with respect to these properties reveals that explanations of AOP that are based on weaving are a major obstacle to reasoning about AO programs in a modular way. We argue that a more modular semantics that is easier to reason about can be given to AO programs if we renounce the monotonicity of the corresponding reasoning system - a sacrifice that is well-known in artificial intelligence to model "common sense" reasoning. More generally, we claim that AOP should be understood as a form of nonmonotonic knowledge representation.