Metaprogramming consists of creating a program that creates or modifies another program (or itself).
メタプログラミングとは、他のプログラム（もしくは自分自身）を生成、修正するプログラムを生成することである。