Skip to main content

A Background of Meta-Programming Techniques

  • Chapter
  • First Online:
Meta-Programming and Model-Driven Meta-Program Development

Part of the book series: Advanced Information and Knowledge Processing ((AI&KP,volume 5))

  • 1107 Accesses

Abstract

In Chap. 2, we discussed the fundamental concepts of programming and meta-programming. Knowing the meaning of the concepts through their definitions is important but not enough. It is just the first step to acquire knowledge in the field. The aim of this chapter is to extend that knowledge and to reconsider some software design principles as a background of meta-programming techniques. Here, by principles, we mean the known software construction principles as they are to be applied to meta-programming domain. We refer to them as preliminary principles, when we discuss the way on how to start acquiring knowledge in the field. We refer to them as fundamental principles, when we consider the background of meta-programming based on information hiding. We refer to the implementation techniques or mechanism, when we consider the conceptual description of how some principles are realized in order to implement the meta-programming paradigm.

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

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover 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

Institutional subscriptions

References

  1. Czarnecki K, Eisenecker UW (2000) Separating the configuration aspect to support architecture evolution. In: Proceedings of 14th European conference on object-oriented programming (ECOOP’2000), international workshop on aspects and dimensions of concerns, Cannes, France, 11–12 June 2000

    Google Scholar 

  2. Coplien J, Hoffman D, Weiss D (1998) Commonality and variability in software engineering. IEEE Softw 15:37–45

    Article  Google Scholar 

  3. Czarnecki K, Kim CHP, Kalleberg KT (2006) Feature models are views on ontologies. In: Proceedings of the 10th international software product line conference, Baltimore, 2006, pp 41–51

    Google Scholar 

  4. Dijkstra EW (1972) Notes on structured programming. In: Dahl OJ, Dijkstra EW, Hoare CAR (eds) Structured programming. Academic, London

    Google Scholar 

  5. Greer D (2008) The art of separation of concerns. http://ctrl-shift-b.blogspot.com/2008/01/art-of-separation-of-concerns.html

  6. Hubaux A, Heymans P, Unphon H (2008) Separating variability concerns in a product line re-engineering project. In: EA-AOSD’08, Brussels, Belgium, 31 Mar 2008

    Google Scholar 

  7. Kang K, Cohen S, Hess J, Novak W, Peterson S (1990) Feature-oriented domain analysis (FODA) fessibility study. In: TR CMU/SEI-90-TR-21, Software Engineering Institute, Carnegie Mellon University, Nov 1990

    Google Scholar 

  8. Kiczales G, Lamping J, Mendhekar A, Maeda C, Videira Lopes C, Loingtier J-M, Irwin J (1997) Aspect-oriented programming. In: Proceedings of the European conference on object-oriented programming (ECOOP’1997). LNCS, vol 1241. Springer, Berlin, pp 220–242

    Google Scholar 

  9. Ossher H, Tarr P (2001) Multi-dimensional separation of concerns and the hyperspace approach. In: Aksit M (ed) Software architectures and component technology: the state of the art in software development. Kluwer Academic Publishers, Boston

    Google Scholar 

  10. Parnas DL (1972) On the criteria to be used in decomposing a system into modules. Commun ACM 15(12):1053–1058

    Google Scholar 

  11. Štuikys V, Damaševičius R (2000) Scripting language open PROMOL and its processor. Informatica 11(1):71–86

    MATH  Google Scholar 

  12. Štuikys V, Damaševičius R, Brauklytė I, Limanauskienė V (2008) Exploration of learning object ontologies using feature diagrams.In: Proceedings of world conference on educational multimedia, hypermedia & telecommunications (ED-MEDIA 08), June 30–July 4 2008, Vienna, Austria, pp 2144–2154

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Vytautas Štuikys .

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag London

About this chapter

Cite this chapter

Štuikys, V., Damaševičius, R. (2013). A Background of Meta-Programming Techniques. In: Meta-Programming and Model-Driven Meta-Program Development. Advanced Information and Knowledge Processing, vol 5. Springer, London. https://doi.org/10.1007/978-1-4471-4126-6_3

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-4126-6_3

  • Published:

  • Publisher Name: Springer, London

  • Print ISBN: 978-1-4471-4125-9

  • Online ISBN: 978-1-4471-4126-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics