Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
A Decision Tree-based Approach to Dynamic Pointcut Evaluation
[go: Go Back, main page]

Department of Computer Science

Laboratory for Software Design


The research and educational activities described on these pages has been supported in part by the US National Science Foundation (NSF) under grants CNS-06-27354, CNS-07-09217, and a CAREER award 08-46059.

Got a question?

Got a question or comment? Contact us at (515) 294-6168 or hridesh@cs.iastate.edu.

A Decision Tree-based Approach to Dynamic Pointcut Evaluation

By Robert Dyer and Hridesh Rajan

Abstract

Constructs of dynamic nature, e.g., history-based pointcuts and control-flow based pointcuts, have received significant attention in recent aspect-oriented literature. A variety of compelling use cases are presented that motivate the need for efficiently supporting such constructs in language implementations.

The key challenge in implementing dynamic constructs is to efficiently support runtime adaptation of the set of intercepted join points at a fine-grained level. This translates to two high-level requirements. First, since the set of intercepted join points may change, such implementations must provide an efficient method to determine this set membership, i.e., whether the currently executing join point needs to be intercepted. Second, the frequency with which such set membership needs to be determined must be minimized. In previous work, Dyer and Rajan proposed a dedicated caching mechanism to address the second requirement. In this work, we propose a mechanism to address the first requirement. This requirement translates to efficiently evaluating whether a join point is intercepted by a set of pointcut expressions. Note that the set of such join points and pointcut expressions can be potentially very large.

In the worst case, at every join point there may be the need to determine whether it is intercepted. Therefore, even modest savings in such mechanisms is likely to translate to significant savings in the long run.

Bibliographic Information

@inproceedings{Dyer-Rajan-08b,
author = {Robert Dyer and Hridesh Rajan},
title = {A Decision Tree-based Approach to Dynamic Pointcut Evaluation},
booktitle = {VMIL '08: Proceedings of the 2nd workshop on Virtual machines and intermediate languages for emerging modularization mechanisms},
year = {2008},
location = {Nashville, TN, USA},
}

Full Paper: PDF