> Once you have allowed that proprietary cr*p into your C++ codebase
People have been doing that all the time for every kind of codebase. It's just part of the business. I don't see how it's worth having any emotions or opinions about it. Seems like you are wasting your energy.
Are win32 APIs proprietary? So you decide to use them, use a wrapper/UI framework, or don't develop for Windows. Easy choice.
Developing for embedded devices? So you read the manufacturers manual and implement based on the spec, use some sort of HAL if they are available, or you don't have a job. Even simpler.
Many software engineers forget they're employee of a business.
> Are win32 APIs proprietary?
Yes. And crap. Not in my code bases.
CUDA is not an API, CUDA is a language, so you cannot make that comparison.
> I don't see how it's worth having any emotions or opinions about it.
Ironic, seeing as that is an opinion about it. Also weird telling people in an online discussion forum not to have opinions.