Definitions for "METAPROGRAMMING"
The ability to reprogram your own self-limiting neurological programming. Consciously changing one's "models", "maps", and "beliefs" of the world; changing "reality-tunnels". [John Lilly, 1968, Programming & Metaprogramming in the Human Biocomputer
Metaprogramming is the writing of programs that write or manipulate other programs (or themselves) as their data or that do part of the work that is otherwise done at run time during compile time. In many cases, this allows programmers to get more done in the same amount of time as they would take to write all the code manually.
Metaprogramming is the name of a management technique invented by Charles Simonyi (who also developed Hungarian notation) for organizing the work of a team of programmers.
A method for creating abstract components and extracting concrete components from them. See Instantiation.