It’s always a strange way why a language has success and is widely used.
- For pyhton and ML, i think it’s because this the first language that allow to run with GPU. And now, others languages can do it, but the habit is taken.
- For Kotlin, it started with Android dev, that were stuck to java 1.6 and wanted to go further. Nullsafe & coroutines which are elements of its strongness came later.
- For Java, at the beginning, was adopted because considering as a “Web language”, and it’s later that developers appreciate the garbage collector.
So, to say, Kotlin is well adapted for ML, but the reason that libraries are essentially developed in Python is certainly not fully rational
And, one element often make success of a language/tools, it’s the simplicity of a “Hello world” program.
As elizarov said
Kotlin is, without doubt, considerably more productive for any project of non-trivial size due to its static types and emphasis on toolability. Even at 10K+ Python LOCs you start to feel pains of a dynamic language. Python works nicely in slide-ware and in small code snippets of the kind you can put into iPython notebooks