Maybe moving away from X is really just a cover for moving away from ICCCM? :)
My overall thesis is that the overall design of X (client/server model, mechanism not policy, extensibility) is a sound one, and that the issues cited by Wayland proponents would be better addressed by an evolution of X than a whole-sale replacement.
I'm kinda surprised that nobody's written an X server in JavaScript yet (not that it's what I'm proposing above, just that people love to do crazy useless things like that).
Is there a rule 34 about things that shouldn't be written in JavaScript being written in JavaScript?