Right. I didn't realize it was
that sort of reflection, see my edit.
I don't know if their approach is the right one. I think the visitor pattern is a bit limited in usefulness (where it fits nicely for serde, it'll fall flat for other more exotic use cases I think. But I've not thought about it for more than about 5 minutes and haven't considered any other possible alternatives - they have.)
However, I agree with them in that the current song and dance with syn being the prevailing defacto crate most of our macros are built on is a bit absurd, especially since they refuse to open up proc_macro internals for use by the public. I can certainly see both sides' points but the net effect is that, right now, the macro business yields subpar error handling and feels very much hacked on rather than being a natural part of the language like most other things in Rust seem to.