...and there's no good reason why you can't, other than that in some iteration of API, frequent developers could not imagine why would anybody need that.
Isn't it because everything is represented as triangles? That is fundamental to how openGL works I believe.
Everything can be represented in terms of everything else. It's a matter of caring, or not caring, about convenience.
Oh dear lord yes. I was struggling to just plot some points on a plane 15 years ago, something I'd done trivially in class years prior. I finally complained to a friend, and that's how I learned about python and pygame. Damn near changed my life.