Create_Map
Простейшее усовершенствование. В стандартную функцию create_map можно добавить функционал необязательных параметров.
Если она вызвана без параметров - то ничего не меняется по сравнению со стандартным вариантом. Если в функцию переданы 2 параметра, создаётся новый ассоциативный массив с уже заполненным одним полем (что логично ожидать).
define(`Create_Map',`ifelse($1,,create_map(),$#,2,set_value(create_map(),$1,$2),m4_error(CREATE_MAP MAY HAVE 0 OR 2 PARAMETERS))')
Несмотря на тривиальность, в моих текстах используется весьма часто.