Макрос — это макрокоманда, короткая запись длинных определений. По сравнению с переназначениями макросы более гибки и могут использоваться для сокращения операций загрузки новых определений из библиотеки и пакетов. Макросы создаются с помощью функции macro:
macrc(e1, e2, .... en)
где el, е2, ....,, en — ноль или более равенств.
В следующем примере функция numbperm с помощью макроса заменена на пр:
> numbperm([l,2,3,4]);
24
> macro(np=numbperm(V));
nр
> V:=[1.2.3.4]:
F:=[l,2,3,4]
> np(V);
24
Макросы могут быть использованы для конструирования выражений из их макроопределений.