On reconciling patches and aspects

Laurent Burgy, Marc E. Fiuczynski, Marco Yuen, Robert Grimm

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

In previous work, we presented a domain-specific enhancement to C, called C4, that lets developers manage program extensions leveraging techniques inspired by the AOSD model as an alternative to the conventional patch approach [3]. Our goal is to offer: (1) tool compatibility letting programmers develop, integrate, modify, and debug C4-based extensions that preserve their existing development workflow and leverages their existing tools rather than requiring additional tools; (2) code understandability of the C4 syntax such that is it straightforward for an uninitiated C programmer to use immediately; and, (3) runtime performance achieving near-zero overhead such that it can be used even in performance critical execution paths. As such C4 source code can be viewed as the result of weaving in AOSD style introductions and advices inline into C program. However, C4 lacked a proper representation of its unwoven form - i.e., what's conventionally in AOSD circles referred to as the pointcut language. This paper makes a case for B4: a patch-based pointcut representation of unwoven C4 and contrasts it with development-oriented pointcut languages belonging to the AspectC family that have been defined for the C programming language.

Original languageEnglish (US)
Title of host publicationProceedings of the 8th Workshop on Aspects, Components, and Patterns for Infrastructure Software, ACP4IS '09, Co-located with the 8th Int. Conf. Aspect-Oriented Software Development, AOSD.09
Pages1-5
Number of pages5
DOIs
StatePublished - 2009
Event8th Workshop on Aspects, Components, and Patterns for Infrastructure Software, ACP4IS '09, Co-located with the 8th International Conference on Aspect-Oriented Software Development, AOSD.09 - Charlottesville, VA, United States
Duration: Mar 2 2009Mar 6 2009

Publication series

NameProceedings of the 8th Workshop on Aspects, Components, and Patterns for Infrastructure Software, ACP4IS '09, Co-located with the 8th Int. Conf. Aspect-Oriented Software Development, AOSD.09

Other

Other8th Workshop on Aspects, Components, and Patterns for Infrastructure Software, ACP4IS '09, Co-located with the 8th International Conference on Aspect-Oriented Software Development, AOSD.09
CountryUnited States
CityCharlottesville, VA
Period3/2/093/6/09

Keywords

  • aosd for c
  • c4
  • patch

ASJC Scopus subject areas

  • Computational Theory and Mathematics
  • Software

Fingerprint Dive into the research topics of 'On reconciling patches and aspects'. Together they form a unique fingerprint.

  • Cite this

    Burgy, L., Fiuczynski, M. E., Yuen, M., & Grimm, R. (2009). On reconciling patches and aspects. In Proceedings of the 8th Workshop on Aspects, Components, and Patterns for Infrastructure Software, ACP4IS '09, Co-located with the 8th Int. Conf. Aspect-Oriented Software Development, AOSD.09 (pp. 1-5). (Proceedings of the 8th Workshop on Aspects, Components, and Patterns for Infrastructure Software, ACP4IS '09, Co-located with the 8th Int. Conf. Aspect-Oriented Software Development, AOSD.09). https://doi.org/10.1145/1509276.1509278