Example similarity map    Similar Patents and Articles Toggle Patent Map

Contact The DL Team Contact Us | Switch to tabbed view

top of pageABSTRACT

Several aspect languages and frameworks have recognized the need for dynamic deployment of aspects. However, they do not provide sufficiently expressive means to precisely specify the scope of deployed aspects. As a result, programmers have to resort to unnecessarily complex pointcut definitions that hinder the reuse potential of aspects. To address the issue of precise and expressive scoping of aspects at deployment time, we propose deployment strategies for parameterized dynamic aspect deployment. This novel mechanism gives full control over the propagation of the aspect on the call stack and within created objects or functions, and permits a deployment-specific refinement of its pointcuts. We discuss and illustrate the gain in expressiveness, and provide the operational semantics of deployment strategies with Scheme interpreters, for both functional and object-oriented based aspect languages.

top of pageAUTHORS



Author image not provided  Éric Tanter

 homepage
 etanteratdcc.uchile.cl
Bibliometrics: publication history
Publication years2001-2017
Publication count86
Citation Count824
Available for download53
Downloads (6 Weeks)196
Downloads (12 Months)1,353
Downloads (cumulative)13,743
Average downloads per article259.30
Average citations per article9.58
View colleagues of Éric Tanter

top of pageREFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
3
 
4
5
6
7
8
9
 
10
11
 
12
 
13
14
 
15
 
16
 
17
18
 
19
 
20
Robert Hirschfeld and Pascal Costanza. Extending advice activation in AspectS. In 2nd European Interactive Workshop on Aspects in Software (EIWAS 2005), Brussels, Belgium, September 2005.
 
21
 
22
Karl Lieberherr, editor. Proceedings of the 3rd ACM International Conference on Aspect-Oriented Software Development (AOSD 2004), Lancaster, UK, March 2004. ACM Press.
23
 
24
Hidehiko Masuhara and Gregor Kiczales. Modeling crosscutting in aspect-oriented mechanisms. In Luca Cardelli, editor, Proceedings of the 17th European Conference on Object-Oriented Programming (ECOOP 2003), number 2743 in Lecture Notes in Computer Science, pages 2--28, Darmstadt, Germany, July 2003. Springer-Verlag.
 
25
26
 
27
Norman Meyrowitz, editor. Proceedings of the 2nd International Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA 87), Orlando, Florida, USA, October 1987. ACM Press. ACM SIGPLAN Notices, 22(12).
 
28
Mira Mezini and Klaus Ostermann. Object creation aspects with flexible aspect deployment. Technical report, Technische Universität Darmstadt, 2003.
29
 
30
Proceedings of the 21st ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA 2006), Portland, Oregon, USA, October 2006. ACM Press.
31
32
33
34
35
36
37

top of pageCITED BY

26 Citations

 
 
 
 
 
 

top of pageINDEX TERMS

The ACM Computing Classification System (CCS rev.2012)

Note: Larger/Darker text within each node indicates a higher relevance of the materials to the taxonomic classification.

top of pagePUBLICATION

Title AOSD '08 Proceedings of the 7th international conference on Aspect-oriented software development table of contents
Conference Chair Theo D'Hondt Vrije Universiteit Brussel, Belgium
Pages 168-179
Publication Date2008-03-31 (yyyy-mm-dd)
Funding Sources Fondo Nacional de Desarrollo Científico y Tecnológico
Millenium Nucleus Center for Web Research
Sponsors AOSA Aspect-Oriented Software Association
In-Cooperations SIGPLAN ACM Special Interest Group on Programming Languages
SIGSOFT ACM Special Interest Group on Software Engineering
PublisherACM New York, NY, USA ©2008
ISBN: 978-1-60558-044-9 doi>10.1145/1353482.1353503
Conference MODULARITYModularity (formerly known as Aspect-oriented Software Development - AOSD) MODULARITY logo
Paper Acceptance Rate 17 of 79 submissions, 22%
Overall Acceptance Rate 178 of 718 submissions, 25%
Year Submitted Accepted Rate
AOSD '06 96 23 24%
AOSD '07 107 19 18%
AOSD '08 79 17 22%
AOSD '09 86 19 22%
AOSD '10 62 18 29%
AOSD '11 95 23 24%
AOSD '12 79 20 25%
AOSD '13 54 18 33%
MODULARITY '14 60 21 35%
Overall 718 178 25%

top of pageREVIEWS


Reviews are not available for this item
Computing Reviews logo

top of pageCOMMENTS

Be the first to comment To Post a comment please sign in or create a free Web account

top of pageTable of Contents

Proceedings of the 7th international conference on Aspect-oriented software development
Table of Contents
SESSION: Aspects and generative programming
AspectT: aspect-oriented test case instantiation
Sebastian Benz
Pages: 1-12
doi>10.1145/1353482.1353484
Full text: PDFPDF

Test case instantiation is the transformation of abstract test cases into executable test scripts. Abstract test cases are either created during model based test case generation or are manually defined in a suitable modeling notation. The transformation ...
expand
"Program, enhance thyself!": demand-driven pattern-oriented program enhancement
Eli Tilevich, Godmar Back
Pages: 13-24
doi>10.1145/1353482.1353485
Full text: PDFPDF

Program enhancement refers to adding new functionality to an existing program. We argue that repetitive program enhancement tasks can be expressed as patterns, and that the application of such enhancement patterns can be automated. This paper presents ...
expand
Modularity first: a case for mixing AOP and attribute grammars
Pavel Avgustinov, Torbjörn Ekman, Julian Tibble
Pages: 25-35
doi>10.1145/1353482.1353486
Full text: PDFPDF

We have reimplemented the frontend of the extensible AspectBench Compiler for AspectJ, using the aspect-oriented meta-compiler JastAdd. The original frontend was purely object-oriented. Each frontend extends Java with AspectJ and an additional set of ...
expand
SESSION: Reasoning about aspects
AJANA: a general framework for source-code-level interprocedural dataflow analysis of AspectJ software
Guoqing Xu, Atanas Rountev
Pages: 36-47
doi>10.1145/1353482.1353488
Full text: PDFPDF

Aspect-oriented software presents new challenges for the designers of static analyses. Our work aims to establish systematic foundations for dataflow analysis of AspectJ software. We propose a control- and data-flow program representation for AspectJ ...
expand
Reasoning about aspects with common sense
Klaus Ostermann
Pages: 48-59
doi>10.1145/1353482.1353489
Full text: PDFPDF

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 ...
expand
SESSION: Programming language design and implementation I
StrongAspectJ: flexible and safe pointcut/advice bindings
Bruno De Fraine, Mario Südholt, Viviane Jonckers
Pages: 60-71
doi>10.1145/1353482.1353491
Full text: PDFPDF

AspectJ was designed as a seamless aspect-oriented extension of the Java programming language. However, unlike Java, AspectJ does not have a safe type system: an accepted binding between a pointcut and an advice can give rise to type errors at runtime. ...
expand
EJFlow: taming exceptional control flows in aspect-oriented programming
Nelio Cacho, Fernando Castor Filho, Alessandro Garcia, Eduardo Figueiredo
Pages: 72-83
doi>10.1145/1353482.1353492
Full text: PDFPDF

Many of the problems that stem from the use of exception handling are caused by the local way in which exceptions are handled. It demands that developers understand the source of an exception, the place where it is handled, and everything in between. ...
expand
Relational aspects as tracematches
Eric Bodden, Reehan Shaikh, Laurie Hendren
Pages: 84-95
doi>10.1145/1353482.1353493
Full text: PDFPDF

The relationships between objects in an object-oriented program are an essential property of the program's design and implementation. Two previous approaches to implement relationships with aspects were association aspects, an AspectJ-based language ...
expand
Test-based pointcuts for robust and fine-grained join point specification
Kouhei Sakurai, Hidehiko Masuhara
Pages: 96-107
doi>10.1145/1353482.1353494
Full text: PDFPDF

We propose test-based pointcuts, a novel pointcut mechanism for AspectJ-like aspect-oriented programming languages. The idea behind the test-based pointcuts is to specify join points through unit test cases associated with the target program. ...
expand
SESSION: Aspects for adaptation and variability support
Edicts: implementing features with flexible binding times
Venkat Chakravarthy, John Regehr, Eric Eide
Pages: 108-119
doi>10.1145/1353482.1353496
Full text: PDFPDF

In a software product line, the binding time of a feature is the time at which one decides to include or exclude a feature from a product. Typical binding site implementations are intended to support a single binding time only, e.g., compile time ...
expand
Support for distributed adaptations in aspect-oriented middleware
Eddy Truyen, Nico Janssens, Frans Sanen, Wouter Joosen
Pages: 120-131
doi>10.1145/1353482.1353497
Full text: PDFPDF

Many aspect-oriented middleware platforms support run-time aspect weaving, but do not support coordinating distributed changes to a set of aspects at run-time. A distributed change entails weaving or unweaving multiple inter-dependent aspects that are ...
expand
SESSION: Tool support
Tool-supported refactoring of aspect-oriented programs
Jan Wloka, Robert Hirschfeld, Joachim Hänsel
Pages: 132-143
doi>10.1145/1353482.1353499
Full text: PDFPDF

Aspect-oriented programming languages provide new composition mechanisms for improving the modularity of crosscutting concerns. Implementations of such language support use advanced program representations, like abstract syntax trees or stack traces, ...
expand
Tool support for understanding and diagnosing pointcut expressions
Lingdong Ye, Kris De Volder
Pages: 144-155
doi>10.1145/1353482.1353500
Full text: PDFPDF

In this paper, we present algorithms that compute two kinds of information that can help AspectJ developers diagnose and fix potential problems with their pointcuts. First, we present an algorithm to compute almost matched joinpoints. Second, we present ...
expand
View-based maintenance of graphical user interfaces
Peng Li, Eric Wohlstadter
Pages: 156-167
doi>10.1145/1353482.1353501
Full text: PDFPDF

One difficulty in software maintenance is that the relationship between observed program behavior and source code is not always clear. In this paper we are concerned specifically with the maintenance of graphical user interfaces (GUIs). User interface ...
expand
SESSION: Programming language design and implementation II
Expressive scoping of dynamically-deployed aspects
Éric Tanter
Pages: 168-179
doi>10.1145/1353482.1353503
Full text: PDFPDF

Several aspect languages and frameworks have recognized the need for dynamic deployment of aspects. However, they do not provide sufficiently expressive means to precisely specify the scope of deployed aspects. As a result, programmers have to resort ...
expand
Lightweight virtual machine support for AspectJ
Ryan M. Golbeck, Samuel Davis, Immad Naseer, Igor Ostrovsky, Gregor Kiczales
Pages: 180-190
doi>10.1145/1353482.1353504
Full text: PDFPDF

Advice weaving can be efficiently supported with only lightweight enhancements to existing Virtual Machines. Performing weaving at the Java bytecode (JBC) level while preserving appropriate metadata enables the VM to understand the AspectJ-specific semantics ...
expand
Nu: a dynamic aspect-oriented intermediate language model and virtual machine for flexible runtime adaptation
Robert Dyer, Hridesh Rajan
Pages: 191-202
doi>10.1145/1353482.1353505
Full text: PDFPDF

A variety of dynamic aspect-oriented language constructs are proposed in recent literature with corresponding, compelling use cases. Such constructs demonstrate the need to dynamically adapt the set of join points intercepted at a fine-grained level. ...
expand

Powered by The ACM Guide to Computing Literature


The ACM Digital Library is published by the Association for Computing Machinery. Copyright © 2019 ACM, Inc.
Terms of Usage   Privacy Policy   Code of Ethics   Contact Us