Historically, the reason why D3D became a cleaner API than OGL is that every single version was rewritten from scratch. The first versions were ugly but the API was gradually refined until it overtook OGL. OGL never did that (v2.0 was to be such a rewrite, as was v3.0, but both met resistance within the ARB) so we are stuck with bad design decisions from 15 years ago (even more if you count IrisGL).
That said, I'm not sure a brand new API is the correct answer now. We took this approach for Linux audio and the results weren't the best.
Originally posted by Thunderbird