In short, we can do much better. I'm building a full syntax extension/macro evaluation mechanism for JS.
Where is it? What is it called?
It's called BABLR as it takes concepts from Babel (transpiling) and ANTLR (parsing arbitrary syntax). https://github.com/bablr-lang/
I'm currently in the process of trying to pull together our first big release.