Uma
macro (abreviação para
macroinstrução), em
ciência da computação, é uma regra ou
padrão que especifica como uma certa sequência de entrada (frequentemente uma sequência de
caracteres) deve ser mapeada para uma substituição de sequência de saída (também frequentemente uma sequência de caracteres) de acordo com um procedimento definido. O processo de mapeamento que instancia (transforma) uma utilização de macro em uma sequência específica é conhecido como
expansão de macro. O recurso de escrita de macros pode ser fornecido como parte de um
software aplicativo ou como uma parte de uma
linguagem de programação. No primeiro caso, as macros são usadas para realizar tarefas usando o aplicativo menos repetitivo. No outro caso, elas são uma ferramenta que permite um programador habilitar a
reutilização de código ou mesmo projetar
linguagens de domínio específico.