Eos: Instance-Level Aspects for Integrated System Design
By: Hridesh Rajan and Kevin Sullivan
Download PaperAbstract
This paper makes two contributions: a generalization of AspectJ-like languages with first-class aspect instances and instance-level advising, and a mapping of the mediator style for integrated system design into this space. We present Eos as a prototype language design and implementation. It extends C# with AspectJ-like constructs, first-class aspect instances and instance-level advising. These features enable a direct mapping of mediators to aspect instances, with modularity improved, insofar as components need not declare, announce, or register for events.
ACM Reference
Rajan, H. and Sullivan, K. 2003. Eos: instance-level aspects for integrated system design. ESEC/FSE-11: Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering (New York, NY, USA, 2003), 297–306.
BibTeX Reference
@inproceedings{rajan2003eos,
author = {Hridesh Rajan and Kevin Sullivan},
title = {Eos: instance-level aspects for integrated system design},
booktitle = {ESEC/FSE-11: Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering},
year = {2003},
isbn = {1-58113-743-5},
pages = {297--306},
location = {Helsinki, Finland},
doi = {http://doi.acm.org/10.1145/940071.940111},
publisher = {ACM Press},
address = {New York, NY, USA},
entrysubtype = {conference},
abstract = {
This paper makes two contributions: a generalization of AspectJ-like languages
with first-class aspect instances and instance-level advising, and a mapping
of the mediator style for integrated system design into this space. We present
Eos as a prototype language design and implementation. It extends C# with
AspectJ-like constructs, first-class aspect instances and instance-level
advising. These features enable a direct mapping of mediators to aspect
instances, with modularity improved, insofar as components need not declare,
announce, or register for events.
}
}