Results 1 - 10
of
218
Polyglot: An Extensible Compiler Framework for Java
- In 12th International Conference on Compiler Construction
, 2003
"... Polyglot is an extensible compiler framework that supports the easy creation of compilers for languages similar to Java, while avoiding code duplication. ..."
Abstract
-
Cited by 255 (17 self)
- Add to MetaCart
(Show Context)
Polyglot is an extensible compiler framework that supports the easy creation of compilers for languages similar to Java, while avoiding code duplication.
Conquering Aspects with Caesar
, 2003
"... Join point interception (JPI), is considered an important cornerstone of aspect-oriented languages. However, we claim that JPI alone does not suffice for a modular structuring of aspects. We propose Caesar, a model for aspect-oriented programming with a higher-level module concept on top of JPI, whi ..."
Abstract
-
Cited by 187 (15 self)
- Add to MetaCart
(Show Context)
Join point interception (JPI), is considered an important cornerstone of aspect-oriented languages. However, we claim that JPI alone does not suffice for a modular structuring of aspects. We propose Caesar, a model for aspect-oriented programming with a higher-level module concept on top of JPI, which enables reuse and componentization of aspects, allows us to use aspects polymorphically, and introduces a novel concept for dynamic aspect deployment.
Open Modules: Modular Reasoning about Advice
, 2005
"... Advice is a mechanism used by advanced object-oriented and aspect-oriented programming languages to augment the behavior of methods in a program. Advice can help to make programs more modular by separating crosscutting concerns more e#ectively, but it also challenges existing ideas about modular ..."
Abstract
-
Cited by 171 (0 self)
- Add to MetaCart
(Show Context)
Advice is a mechanism used by advanced object-oriented and aspect-oriented programming languages to augment the behavior of methods in a program. Advice can help to make programs more modular by separating crosscutting concerns more e#ectively, but it also challenges existing ideas about modularity and separate development.
A runtime assertion checker for the Java Modeling Language (JML)
- PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING RESEARCH AND PRACTICE (SERP ’02), LAS VEGAS
, 2002
"... ..."
Jiazzi: New-Age Components for Old-Fashioned Java
, 2001
"... We present Jiazzi, a system that enables the construction of largescale binary components in Java. Jiazzi components can be thought of as generalizations of Java packages with added support for external linking and separate compilation. Jiazzi components are practical because they are constructed ou ..."
Abstract
-
Cited by 116 (13 self)
- Add to MetaCart
(Show Context)
We present Jiazzi, a system that enables the construction of largescale binary components in Java. Jiazzi components can be thought of as generalizations of Java packages with added support for external linking and separate compilation. Jiazzi components are practical because they are constructed out of standard Java source code. Jiazzi requires neither extensions to the Java language nor special conventions for writing Java source code that will go inside a component. Our components are expressive because Jiazzi supports cyclic component linking and mixins, which are used together in an open class pattern that enables the modular addition of new features to existing classes. This paper describes Jiazzi, how it enhances Java with components, its implementation, and how type checking works. An implementation of Jiazzi is available for download.
An overview of CaesarJ
- In Transactions on Aspect-Oriented Software Development I
, 2006
"... Abstract. CaesarJ is an aspect-oriented language which unifies aspects, classes and packages in a single powerful construct that helps to solve a set of different problems of both aspect-oriented and component-oriented programming. The paper gradually introduces the concepts of the lan-guage and ill ..."
Abstract
-
Cited by 114 (11 self)
- Add to MetaCart
(Show Context)
Abstract. CaesarJ is an aspect-oriented language which unifies aspects, classes and packages in a single powerful construct that helps to solve a set of different problems of both aspect-oriented and component-oriented programming. The paper gradually introduces the concepts of the lan-guage and illustrates them by showing how they can be used for non-invasive component refinement and integration, as well as for develop-ment of well modularized flexible aspects. In this way we demonstrate that the combination of aspect-oriented constructs for join-point inter-ception with advanced modularization techniques like virtual classes and propagating mixin composition can open the path towards large-scale as-pect components. 1
System support for pervasive applications.
- ACM Trans. on Computer Systems,
, 2004
"... ..."
(Show Context)
Modeling crosscutting in aspect-oriented mechanisms
- European Conference on Object-Oriented Programming (ECOOP), 2003
"... Abstract. Modeling four aspect-oriented programming mechanisms shows the way in which each supports modular crosscutting. Comparing the models produces a clear three part characterization of what is required to support crosscutting structure: a common frame of reference that two (or more) programs c ..."
Abstract
-
Cited by 104 (3 self)
- Add to MetaCart
(Show Context)
Abstract. Modeling four aspect-oriented programming mechanisms shows the way in which each supports modular crosscutting. Comparing the models produces a clear three part characterization of what is required to support crosscutting structure: a common frame of reference that two (or more) programs can use to connect with each other and each provide their semantic contribution. 1
Observers and assistants: A proposal for modular aspect-oriented reasoning
- In FOAL Workshop
, 2002
"... In general, aspect-oriented programs require a whole-program analysis to understand the semantics of a single method invocation. This property can make reasoning difficult, impeding maintenance efforts, contrary to a stated goal of aspect-oriented programming. We propose some simple modifications to ..."
Abstract
-
Cited by 97 (9 self)
- Add to MetaCart
(Show Context)
In general, aspect-oriented programs require a whole-program analysis to understand the semantics of a single method invocation. This property can make reasoning difficult, impeding maintenance efforts, contrary to a stated goal of aspect-oriented programming. We propose some simple modifications to AspectJ that permit modular reasoning. This eliminates the need for whole-program analysis and makes code easier to understand and maintain. 1.
Programming Dynamically Reconfigurable Open Systems with SALSA
- ACM SIGPLAN Notices. OOPSLA’2001 Intriguing Technology Track Proceedings
, 2001
"... Applications running on the Internet, or on limited-resource devices, need to be able to adapt to changes in their execution environment at run-time. Current languages and systems fall short of enabling developers to migrate and recon gure application sub-components at program-execution time. ..."
Abstract
-
Cited by 88 (32 self)
- Add to MetaCart
(Show Context)
Applications running on the Internet, or on limited-resource devices, need to be able to adapt to changes in their execution environment at run-time. Current languages and systems fall short of enabling developers to migrate and recon gure application sub-components at program-execution time.