#3. OpenGL is behind DirectX 9.0 (Again OpenGL can always catch up. And through the support on the fly extensions. These features can be enabled before they get Arbed)
In what respect? I'm no DX expert, so I dont know, but as far as fragment processing goes, you can get more power in GL, if you're prepared to use NV's own extension. The ARB version is probably identical to DX9.
NV's own Vertex Shader extension again has more power, due to full dynamic branching, which is not due until VS3.0 IIRC.
The only part I think GL currently lacks is floating point render targets, though I could be wrong. NV currently only allow floating point textures of type rectangle, whereas ATI offer much better support. But I dont think this is ARB'ified yet.
But seriously, if you can list the differences I'd be interested and greatful.
EDIT: Meant VS3.0 not PS3.0