Symmetric aspect-orientation: some practical consequences

  • Authors:
  • Jaroslav Bálik;Valentino Vranić

  • Affiliations:
  • Slovak University of Technology in Bratislava, Bratislava, Slovakia;Slovak University of Technology in Bratislava, Bratislava, Slovakia

  • Venue:
  • Proceedings of the 2012 workshop on Next Generation Modularity Approaches for Requirements and Architecture
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

To some extent, contemporary software development has incorporated the AspectJ style of aspect-oriented programming. This style is denoted as asymmetric since it explicitly distinguishes between aspects and the base. Although academic symmetric aspect-oriented approaches, in which there is no such distinction, gained no direct acceptance in industry, several approaches used in practice exhibit symmetric aspect-oriented features. As shown in this paper, this ranges from peer use cases and features as analysis and design concepts to particular programming language mechanisms such as traits (Scala), open classes (Ruby), or prototypes (JavaScript). Even inter-type declarations and advices as known from AspectJ can be used to emulate symmetric aspect-oriented programming. The examples given in this paper indicate the basic possibilities for this. However, detailed studies of the corresponding academic and industry approaches should be carried.