Aspect Coordination for Web Applications in Java / AspectJ and Ruby / Aquarium

Aspects are independent modules that capture otherwise crosscutting behavior. There are mechanisms for enabling their coordination without compromising their independence, but the aspect oriented implementation platform highly impacts on the final result. In this work we analyze Java/AspectJ and Ruby/Aquarium for the implementation of such coordination mechanism. Performance, conceptual and coding trade-offs can be derived from the differences between these platforms. The balance between absolute and relative performance costs and the benefits of provided by each platform are not obvious. The results of this analysis is determining to choose the right underlying aspect platform for different scenarios. Keywords-aspect oriented programming, static languages, dynamic languages