Uso de macros Clojure para DSLs

Estoy trabajando en un proyecto de Clojure y a menudo me encuentro escribiendo macros Clojure para DSL, pero estaba viendo un video de Clojure sobre cómo una empresa usa Clojure en su trabajo real y el orador dijo que en el uso práctico no usan macros para sus DSL, solo usan macros para agregar una pequeña sugerencia sintáctica. ¿Significa esto que debería escribir mi DSL usando funciones estándar y luego agregar algunas macros al final?

Actualiza: Después de leer las muchas respuestas variadas (y entretenidas) a esta pregunta, me di cuenta de que la respuesta no es tan clara como pensé por primera vez, por muchas razones:

Hay muchos tipos diferentes de API en una aplicación (interna, externa)

Hay muchos tipos de usuarios de la API (usuarios comerciales que solo quieren hacer algo rápido, experto en Clojure)

¿Hay macro allí para ocultar el código de la placa de la caldera?

Me iré y pensaré la pregunta más profundamente, pero gracias por sus respuestas, ya que me han dado mucho en qué pensar. También noté que Paul Graham piensa lo contrario del video de Christophe y piensa que las macros deberían ser una gran parte de la base de código (25%):

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

Respuestas a la pregunta(4)

Su respuesta a la pregunta