I recently read the article Every programming language needs its killer app to succeed and think the article makes a great point. It made a lot of sense to me. However, the term "killer app" seems to not really work out with the examples. Only Ruby lists Ruby on Rails as its killer app, but that's basically it.
Instead, I think it's about having a killer domain. So, going through the examples from the original article, here is my take:
C → Kernels.
C++ → Low-level systems programming.
Rust → Low-level systems programming.
Java → Business applications and Android.
C# → Business applications that run on Microsoft systems.
Cobol → Business applications.
Go → High performance servers.
Swift → Apps that run on Apple systems.
Python → Scientific computing and machine learning.
Julia → Numeric/Scientific computing.
Fortran → Numeric/Scientific computing.
Matlab → Numeric/Scientific computing.
JavaScript → Web frontend.
TypeScript → Web frontend.
Ruby → Web backend.
PHP → Web backend.
Lua → Embedded into other languages.
R → Statistics.
Of course some domains are overly simplified, but in my experience each time I try to use a language in the wrong domain, it's much harder and often practically infeasable.