An aspect for idiom-based exception handling: (using local continuation join points, join point properties, annotations and type parameters)

  • Authors:
  • Bram Adams;Kris De Schutter

  • Affiliations:
  • Ghent University;University of Antwerp

  • Venue:
  • Proceedings of the 5th workshop on Software engineering properties of languages and aspect technologies
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

The last couple of years, various idioms used in the 15 MLOC C code base of ASML, the world's biggest lithography machine manufacturer, have been unmasked as crosscutting concerns. However, finding a scalable aspect-based implementation for them did not succeed thusfar, prohibiting sufficient separation of concerns and introducing possibly dangerous programming mistakes. This paper proposes a concise aspect-based implementation in Aspicere2 for ASML's exception handling idiom, based on prior work of join point properties, annotations and type parameters, to which we add the new concept of (local) continuation join points. Our solution takes care of the error value propagation mechanism (which includes aborting the main success scenario), logging, resource cleanup, and allows for local overrides of the default aspect-based recovery. The highly idiomatic nature of the problem in tandem with the aforementioned concepts renders our aspects very robust and tolerant to future base code evolution.