کد مقاله کد نشریه سال انتشار مقاله انگلیسی نسخه تمام متن
433674 1441651 2015 34 صفحه PDF دانلود رایگان
عنوان انگلیسی مقاله ISI
An expressive stateful aspect language
ترجمه فارسی عنوان
یک زبان نمایشی برجسته زبان
موضوعات مرتبط
مهندسی و علوم پایه مهندسی کامپیوتر نظریه محاسباتی و ریاضیات
چکیده انگلیسی


• We identify limitations of current stateful aspect languages.
• We introduce an expressive stateful aspect language in order to address these limitations.
• We precisely describe our proposal with a typed functional language (Typed Racket).
• We provide a concrete implementation of our proposal for JavaScript.
• In addition, we discuss a reference frame of comparison of current stateful aspect languages.

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.

ناشر
Database: Elsevier - ScienceDirect (ساینس دایرکت)
Journal: Science of Computer Programming - Volume 102, 1 May 2015, Pages 108–141
نویسندگان
, , ,