I've heard that CLX doesn't provide all the interfaces one would need to implement a good quality window manager. Not true. It provides all the necessary facilities. It merely does not provide all of the thousands of "convenience" interfaces that the C Xlib does that have specific property names and formats buried within them.