Over the past several decades, generic programming has become the predominant mechanism for delivering reliable and efficient C++ libraries. The C++ template system simultaneously provides support for programming at a level of abstraction close to the mathematical formulation of algorithms and executing those programs as if they had been written and tuned by hand. Despite the potential of the methodology, its application is generally limited to expert programmers. One cause for this is education. Another is the lack of language support and compiler tools.
The purpose of this web page is to present collections resources related to the development language and tool support for generic programming, the documentation of general purpose and domain specific concepts and abstractions, and the instruction of programmers in methods and techniques related to these ideas.
This work is partially funded by the National Science Foundation through grant ACI-1148461.
Please continue to the ConceptWiki for more information and resources.