Preserving Separation of Concerns through Compilation

Rajan, Hridesh, Dyer, R., Hanna, Y., Narayanappa, H.. Preserving Separation of Concerns through Compilation. ,

Abstract

Today’s aspect-oriented programming (AOP) languages provide software engineers with new possibilities for keeping conceptual concerns separate at the source code level. For a number of reasons, current aspect weavers sacrifice this separation in transforming source to object code (and thus the very term weaving). In this paper, we argue that sacrificing modularity has significant costs, especially in terms of the speed of incremental compilation and in testing. We argue that design modularity can be preserved through the mapping to object code, and that preserving it can have significant benefits in these dimensions. We present and evaluate a mechanism for preserving design modularity in object code, showing that doing so has potentially significant benefits.