It is an ecosystem.

At the botton you have the PTX bytecode.

Followed by (from NVidia) compilers for C, C++, Fortran, Python JIT and more recently Julia JIT.

Additionally there are third party support for .NET, Java, Haskell tooling to also target CUDA.

Then you have the libraries ready to plug into the official NVidia compilers to reduce the need to explicitly write CUDA code manually.

Finally you have the graphical debugging and profiling tools that make targeting GPUs as easy as regular CPU programming, ignoring the hardware differences for a moment.

All wannabe replacements fail, because they focus only on the CUDA C++ compiler and nothing else.