An Introduction to Generic Programming


This introduction has introduced the entire Generic Programming process, from the initial lifting of concrete implements into generic algorithms through concept analysis, the mapping of diverse abstractions to concepts through models, and finally the use of specialization to provide improved algorithms for more specific concepts. There is far more to learn about Generic Programming. The following references provide more information about Generic Programming, or check out some generic libraries written using the GP paradigm:

  • ConceptC++, an extension to C++ that provides drastically improved support for Generic Programming. There is also an experimental compiler, ConceptGCC, for ConceptC++.
  • Generic Programming in C++, a guide to the various techniques and tricks used to implement generic libraries in C++.
  • The SGI Standard Template Library documentation, which provides documentation for all of the concepts, algorithms, and data structures in the STL.
Previous: Specialization Author: Douglas Gregor