Exploration of more abstract macro definition