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.
Metaprogrammeerimine on selliste arvutiprogrammide kirjutamine, mis manipuleerivad andmetena teisi programme (või iseennast), või mis teevad osa tööst, mida harilikult tehtaks programmi jooksmise ajal, juba kompileerimise ajal.