Skip to content
Search

Metaprogramming

lastmod 2018-08-17created 2015-07-022 edits

Metaprogramming is writing programs that write or modify programs by treating themselves or other computer programs as data. In a broader sense, it also refers to programs that perform at compile time part of the work that would otherwise be done at run time.

The language used for metaprogramming is called the metalanguage, and the language that is the target of metaprogramming is called the object language. A programming language being its own metalanguage is called reflection.

See also

Favorite site