![]() |
Monday, January 17, 2005
Hridesh Rajan
Department of Computer Science, University of Virginia
Chair: John Knight
Advisor: Kevin Sullivan
Olsson 236D, 1:00 PM
A Ph.D. Proposal
Improved Abstractions for Aspect-Oriented Software Development
ABSTRACT
Aspect-oriented software development promises to improve our ability to
modularize complex software effectively. However, aspect-oriented
programming languages and tools are still in their infancy, and many
applications remain unexplored. The problem that I propose to address in my
dissertation is that, notwithstanding the advances that have been made, the
design models for even the most successful aspect-oriented languages today
remain unnecessarily complex, significantly constrain the program designer,
lead to unnecessarily complex programs, and exhibit unacceptable
performance degradation as a function of the richness of advising
structures. I have traced many of these problems to a key design decision
at the heart of major existing language designs: they embrace a non-
object-oriented, static module-based view of what an aspect is and how it
interacts with the other components of a software system. My solution is
based on the idea that aspects should be formulated as first-class
constructs analogous to classes: e.g., subject to instantiation under
program control. I show that, without loss of expressiveness, this change
significantly improves the compositionality of aspect-oriented components;
creates valuable new architectural possibilities; enables a unification of
object- and aspect-oriented programming, simplifying the programming model;
and mitigates the inherent performance problem in the current language
model. I propose to develop my aspect language design ideas further with
efforts to generalize both join point models and the concept of compile-
time weaving at selected join points. In this proposal, I describe results
to date, including published results in the three top conferences in my
area, and the design of a language and a full working compiler; and I
outline work that remains to be done.
Other Recent and Upcoming Colloquia |