On DSA and why it is more than just a convenience, see slide 67 of http://www.slideshare.net/Mark_Kilga...gl-32-and-more
But in all honesty, that the state is not shadowed is kind of screwy... we are not talking alot of data really... if we think about it, most objects just have a few bytes of state (here for example for textures I am not talking about the texture data itself but all the glTexParameters) so even if one had one million GL objects running around, it is not a lot of data...the only object that may have a fair amount of state is GLSL programs (as they save the values of uniforms) but one does not query those values anyways..