Two things. Effort and support. You can probably wrap BLAS in any language and make a framework out of that. With some more effort you can add support for GPUs and make your framework much faster. But why would you when most of that is already available? Some might really hate Python but learning Python just for the framework would probably be easier then making a ML framework for the language you like. And Python wasn't even dominant until Tensorflow. Torch used to be a good competetor.
Many people make the mistake of promoting the language instead of the framework.
And the next thing is support. When some big company releases a ML framework and starts using it for themselves people start using it for their own projects. It's mostly because people think that it will last longer then a month. There were lots of dead python ML projects before Tensorflow.
So if you can get a big company to release a ML framework for your favourite language it will surely gain at least some market share.
The language almost doesn't matter. I say almost because big companies are more likely to choose popular languages.
Many people make the mistake of promoting the language instead of the framework.
And the next thing is support. When some big company releases a ML framework and starts using it for themselves people start using it for their own projects. It's mostly because people think that it will last longer then a month. There were lots of dead python ML projects before Tensorflow.
So if you can get a big company to release a ML framework for your favourite language it will surely gain at least some market share.
The language almost doesn't matter. I say almost because big companies are more likely to choose popular languages.