create [or replace] macro MACRO-NAME [%MACRO-SIGNATURE%] as MACRO-EXPANSION [spec CALC-SPEC-STRING [comment COMMENT-STRING]] MACRO-SIGNATURE::= '(' { !any! |single |group |optional |optional_group [,...] } ')'