Yes, the current attribute situation in D is a mess.
A more coherent D syntax would make the language more approachable. I find the current syntax to be somewhat annoying.
I'd also like to see coherent naming conventions for attributes etc, e.g.
@nogc // assert/prove no gc (for compiled code)@is_nogc // assume/guarantee no gc (for linked code, or "unprovable" code)