Skip to main content

A Comparison of Program Generation with Aspect-Oriented Programming

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3566))

Abstract

Program generation and transformation techniques have gained considerable attention in the context of domain-specific languages (DSLs) and model-driven architecture (MDA). In this paper we compare domain-specific program generators with general-purpose aspect-oriented languages. We argue that program generation techniques have severe disadvantages with respect to composability, scalability, understandability, and other important software engineering issues. Finally, we advocate general-purpose aspect-oriented languages as an alternative for the implementation of domain-specific languages.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. AspectJ homepage (2005), http://aspectj.org

  2. Batory, D., Sarvela, J.N., Rauschmayer, A.: Scaling step-wise refinement. In: International Conference on Software Engineering, ICSE 2003 (2003)

    Google Scholar 

  3. Batory, D., Singhal, V., Thomas, J., Dasari, S., Geraci, B., Sirkin, M.: The genvoca model of software-system generators. IEEE Software 11(5) (1994)

    Google Scholar 

  4. Eichberg, M., Mezini, M., Ostermann, K., Schäfer, T.: Xirc: A kernel for cross-artifact information engineering in software development environments. In: Werner, B. (ed.) Eleventh Working Conference on Reverse Engineering, Delft, Netherlands, November 2004, pp. 182–191. IEEE Computer Society Press, Los Alamitos (2004)

    Chapter  Google Scholar 

  5. Garlan, D., Kaiser, G.E., Notkin, D.: Using tool abstraction to compose systems. Computer 25(6), 30–38 (1992)

    Article  Google Scholar 

  6. Hudak, P.: Building domain-specific embedded languages. ACM Comput. Surv. 28(4es), 196 (1996)

    Article  Google Scholar 

  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, p. 327. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  8. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., 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)

    Chapter  Google Scholar 

  9. Mezini, M., Ostermann, K.: Integrating independent components with on-demand remodularization. In: Proceedings of OOPSLA 2002, Seattle, USA (2002)

    Google Scholar 

  10. Mezini, M., Ostermann, K.: Conquering aspects with Caesar. In: Proc. International Conference on Aspect-Oriented Software Development (AOSD 2003), Boston, USA (2003)

    Google Scholar 

  11. Mezini, M., Ostermann, K.: Variability management with feature-oriented programming and aspects. In: FSE (2004) (to appear)

    Google Scholar 

  12. Ostermann, K., Mezini, M., Bockisch, C.: Expressive pointcuts for increased modularity. In: Black, A.P. (ed.) ECOOP 2005, vol. 3586, pp. 214–240. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  13. Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Communications of the ACM 15(12), 1053–1058 (1972)

    Article  Google Scholar 

  14. Smaragdakis, Y., Batory, D.: Implementing layered designs with mixin layers. In: Jul, E. (ed.) ECOOP 1998. LNCS, vol. 1445, pp. 550–570. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  15. Völter, M.: A collection of patterns for program generation. In: Proceedings EuroPLoP 2003 (2003)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Mezini, M., Ostermann, K. (2005). A Comparison of Program Generation with Aspect-Oriented Programming. In: Banâtre, JP., Fradet, P., Giavitto, JL., Michel, O. (eds) Unconventional Programming Paradigms. UPP 2004. Lecture Notes in Computer Science, vol 3566. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11527800_26

Download citation

  • DOI: https://doi.org/10.1007/11527800_26

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-27884-9

  • Online ISBN: 978-3-540-31482-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics