Для автоматизации процесса программирования и решения технических задач зачастую используются макрокоманды, или проще — макросы. Макрос сам по себе является последовательностью команд или, выражаясь техническим термином, инструкций. Так же макрокоманды используются для расширения возможностей программирования, чтобы решать поставленные проблемы на языке предметной области, DSL (Domain-specific language).