> These let you build all sorts of language constructs that you couldn't build in other programming languages.
Many languages (e.g. Rust[0]) let you write procedural macros, even if their grammar is much more complex than that of a Lisp.
Is there some technical advantage to Lisp macros over macro processors in other languages (ignoring string-based ones like the CPP), or do all the benefits lie in the massively improved ergonomics of writing macros?
(Note that Rust also has simpler hygienic macros, but they're not expressive enough for many things.)
Many languages (e.g. Rust[0]) let you write procedural macros, even if their grammar is much more complex than that of a Lisp.
Is there some technical advantage to Lisp macros over macro processors in other languages (ignoring string-based ones like the CPP), or do all the benefits lie in the massively improved ergonomics of writing macros?
(Note that Rust also has simpler hygienic macros, but they're not expressive enough for many things.)
[0]: https://doc.rust-lang.org/reference/procedural-macros.html