Advertisement

Aspects and Data Refinement

  • Pavel Avgustinov
  • Eric Bodden
  • Elnar Hajiyev
  • Oege de Moor
  • Neil Ongkingco
  • Damien Sereni
  • Ganesh Sittampalam
  • Julian Tibble
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4014)

Abstract

We give an introduction to aspect-oriented programming from the viewpoint of data refinement. Some data refinements are conveniently expressed via aspects. Unlike traditional programming language features for data refinement, aspects conceptually transform run-time events, not compile-time programs.

Keywords

Data Refinement Reusable Data Program Language Design Extra Code Object Abstraction 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Morgan, C.: Programming from Specifications, 2nd edn. International Series in Computer Science. Prentice Hall, Englewood Cliffs (1994), http://users.comlab.ox.ac.uk/carroll.morgan/PfS/ MATHGoogle Scholar
  2. 2.
    Paige, R.: Programming with invariants. IEEE Software 3(1), 56–69 (1986)CrossRefGoogle Scholar
  3. 3.
    Gries, D., Volpano, D.M.: The transform—a new language construct. Structured Programming 11(1), 1–10 (1990)Google Scholar
  4. 4.
    Liu, Y.A., Stoller, S.D., Gorbovitski, M., Rothamel, T., Liu, Y.E.: Incrementalization across object abstraction. In: Proc. of 20th Ann. ACM SIGPLAN Int. Conf. on Object-Oriented Programming, Systems, Languages and Applications, OOPSLA 2005, pp. 473–486. ACM Press, New York (2005)CrossRefGoogle Scholar
  5. 5.
    Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C.V., Loingtier, J.-M., Irwin, J.: Aspect-oriented programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  6. 6.
    Masuhara, H., Kiczales, G., Dutchyn, C.: A compilation and optimization model for aspect-oriented programs. In: Hedin, G. (ed.) CC 2003. LNCS, vol. 2622, pp. 46–60. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  7. 7.
    Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An overview of AspectJ. In: Knudsen, J.L. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 327–353. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  8. 8.
    Avgustinov, P., Christensen, A.S., Hendren, L., Kuzins, S., Lhoták, J., Lhoták, O., de Moor, O., Sereni, D., Sittampalam, G., Tibble, J.: Optimising AspectJ. In: Proc. of ACM SIGPLAN 2005 Conf. on Programming Language Design and Implementation, PLDI 2005, pp. 117–128. ACM Press, New York (2005)CrossRefGoogle Scholar
  9. 9.
    abc: The AspectBench Compiler. Home page with downloads, FAQ, documentation, support mailing lists, and bug database, http://aspectbench.org/

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Pavel Avgustinov
    • 1
  • Eric Bodden
    • 2
  • Elnar Hajiyev
    • 1
  • Oege de Moor
    • 1
  • Neil Ongkingco
    • 1
  • Damien Sereni
    • 1
  • Ganesh Sittampalam
    • 1
  • Julian Tibble
    • 1
  1. 1.Oxford University Computing LaboratoryOxfordUnited Kingdom
  2. 2.School of Computer ScienceMcGill UniversityMontréalCanada

Personalised recommendations