Comment Re: libart (Score 1) 172
Well, a better solution than just blindly adding more stuff to the server is to raise the abstraction level at the client end. Instead of making lots of calls to lots of APIs that invoke lots of special features of the server, make the client interface higher level, and do a better job of hiding the distinction between client and server. A good example is NeWS. You write snippets of postscript, and whatever is rendering it can do it's best to make it go as fast as it can. Or OpenGL with display lists. You're right about lots of calls to SetPixel being the wrong thing, but then do we end up with "DrawPolygonRotateShadeAndAddADropShadowThenDrawT
I don't know TOO much about what I'm talking about, but making a clumsy distinction of the server then randomly adding features (which is really how it would be with X) seems like the wrong thing.
Plus with client side APIs, you don't really CARE where it's actually being rendered. If you have something nice and declarative (like a canvas type thing) the lib makes use of whatever it has, X server or what have you.
repeating myself trying to make my point...