Aspectual Reflection

Sergei Kojarski, Northeastern University
Karl Lieberherr, Northeastern University
David H. Lorenz, Northeastern University
Robert Hirschfeld, DoCoMo Communications Laboratories Europe

With most of today's aspect-oriented language extensions, developers have both aspectual and core reflection mechanisms available to them. From a software engineering point of view, these mechanisms serve different purposes in different application areas. This paper explores to what extent aspectual and core reflection overlap. Interactions of aspectual and core reflection are discussed based on practical observations in concrete examples.

In Proceedings of the AOSD 2003 Workshop on Software-engineering Properties of Languages for Aspect Technologies, Boston, Massachusetts, AOSD 2003, March 17-21, 2003.


aspectualreflection.ps.gz (40k)

aspectualreflection.pdf (144k)


@InProceedings{Kojarski:2003:AR,
    Author = "Sergei Kojarski and Karl Lieberherr and David~H. Lorenz and Robert Hirschfeld",
    Crossref = "AOSD:2003:SPLAT",
    Title = "Aspectual Reflection",
    Year = 2003,
}
@InProceedings{Skotiniotis:2003:AII,
    Author = "Therapon Skotiniotis and Karl Lieberherr and David~H. Lorenz",
    Crossref = {AOSD:2003:SPLAT},
    Year = 2003,
    Title = {Aspect Instances and their Interactions},
}
---------- AOSD SPLAT crossref begin ----------
@String{PROC = "Proceedings of"}
@String{AOSD = "International Conference on Aspect-Oriented Software Development"}
@String{PROC:AOSD2003 = PROC#" the 2$^{nd}$ "#AOSD}
@String{AOSD2003 = "AOSD 2003"}
@String{AOSD2003SPLAT = "AOSD 2003 Workshop on Software-engineering Properties of Languages for Aspect Technologies"}
@Proceedings{AOSD:2003:SPLAT,
    Address = {Boston, Massachusetts},
    Booktitle = AOSD2003SPLAT,
    Key = AOSD2003SPLAT,
    Month = mar#{18},
    Organization = AOSD2003SPLAT,
    Title = AOSD2003SPLAT,
    Year = 2003,
}
@Proceedings{AOSD:2003,
    Address = {Boston, Massachusetts},
    Booktitle = PROC:AOSD2003,
    Key = AOSD2003,
    Month = mar#{ 17-21},
    Organization = AOSD2003,
    Publisher = "{ACM} Press",
    Title = PROC:AOSD2003,
    Year = 2003,
}
---------- AOSD SPLAT crossref end ----------