Publications

Stats

View publication

Title An Expressive Stateful Aspect Language
Authors Paul Leger, Éric Tanter, Hiroaki Fukuda
Publication date May 2015
Abstract Stateful aspects can react to the trace of a program
execution;
they can support modular implementations of several crosscutting concerns
like error detection, security, event handling, and debugging. However, most
proposed stateful aspect languages have specifically been tailored to
address a particular concern. Indeed, most of these languages differ in
their pattern languages and semantics. As a consequence, developers need to
tweak aspect definitions in contortive ways or create new specialized
stateful aspect languages altogether if their specific needs are not
supported. In this paper, we describe ESA, an expressive stateful aspect
language, in which the pattern language is Turing-complete and patterns
themselves are reusable, composable first-class values. In addition, the
core semantic elements of every aspect in ESA are open to customization. We
describe ESA in a typed functional language. We use this description to
develop a concrete and practical implementation of ESA for JavaScript. With
this implementation, we illustrate the expressiveness of ESA in action with
examples of diverse scenarios and expressing semantics of existing stateful
aspect languages.
Downloaded 8 times
Pages 108-141
Volume 102
Journal name Science of Computer Programming
Publisher Elsevier Science (Amsterdam, The Netherlands)
PDF View PDF
Reference URL View reference page