Yeah I think you're spot on with the compatibility issues. Obviously YMMV depending on the languages and libraries in question, but yeah there's no one size fits all solution, and writing boilerplate code is the most boring thing in software development.

That's the big thing that's warmed up to programming languages with good macro systems in the past few years (and I absolutely LOVE Zig's comptime paradigm). At the same time, I've got serious questions about the programmers who dismiss macros as overkill for their needs, but then immediately pull out the LLM.

Macros are harder to learn.

But I've wondered the same thing. On some level, the coding superpowers allegedly wrought by LLMs seem reminiscent of proficient use of macros. But most programmers don't use them, and most programming languages don't support them.