I agree with most of you said, so I'll focus on the one disagreement. > but simply the idea of attaching a set of definitions to an object in a > separate place, with a separate syntax, as it makes things much clearer, > manageable, and convenient.
I'm not sure about that, in the "separate" place it lost all context and there is always a tension between "make **this** button bigger" and "make **all** buttons bigger". Putting it somewhere else makes sense for "all", but never for "this".