Given how much COBOL is still in production, I suppose it depends entirely on your definition of "dominant" ?
The difference between my example vs. what you defined, is that hype and/or popularity determine what people use for _new_ projects. But that doesn't really assess how dominant a language has been in the past (or even in production currently).
Java is another dominant language that you might not use for a new project. Same with C.
That definition biases towards verbose languages with lots of headers and boilerplate code (e.g. C++, Java)
I would very much consider using Java for a new project, same with C(1) if the project is in "real time" (I think that C++ hides too much things under the rug which can create latency issue).
1: Zig isn't ready yet to be a replacement