I do believe that the parent comment was unfair; it is possible to implement a compositor without libwayland —
but I do think that there is some truth in that the C structures are the de-facto protocol from the client-side. For example graphics drivers
seem to expect wl_display and wl_surface [1] rather than, say expecting the object id.
It’s not as though this is different under X though and isn’t a criticism of Wayland.
Indeed, my comment is merely observing that wayland is both a protocol and a code base for all practical purposes, I'm trying to leave the criticism to other people ;)
It’s not as though this is different under X though and isn’t a criticism of Wayland.
[1] https://www.khronos.org/registry/vulkan/specs/1.2-extensions...