Utilização de macros Clojure para DSLs

Estou trabalhando em um projeto Clojure e costumo escrever macros Clojure para DSLs, mas estava assistindo um vídeo da Clojure sobre como uma empresa usa o Clojure em seu trabalho real e o palestrante disse que, em uso prático, não usam macros para DSLs, eles usam apenas macros para adicionar um pouco de sugestão sintática. Isso significa que devo escrever minha DSL usando funções padrão e depois adicionar algumas macros no final?

Atualiza: Depois de ler as muitas e variadas respostas (e divertidas) a essa pergunta, percebi que a resposta não é tão clara como eu pensava, por muitas razões:

xistem muitos tipos diferentes de API em um aplicativo (interno, externo

Existem muitos tipos de usuário da API (usuário corporativo que deseja fazer algo rapidamente, especialista em Clojure)

Existe macro para ocultar o código da placa da caldeir

Eu irei embora e pensarei mais profundamente na questão, mas obrigado por suas respostas, pois elas me deram muito em que pensar. Também notei que Paul Graham acha o oposto do vídeo de Christophe e acha que as macros devem ser uma grande parte da base de código (25%):

http: //www.paulgraham.com/avg.htm

questionAnswers(4)

yourAnswerToTheQuestion