This is like trying to replace C on UNIX, C# on .NET, Erlang on BEAM, or JavaScript on the browser.
This is like trying to replace C on UNIX, C# on .NET, Erlang on BEAM, or JavaScript on the browser.
External languages always have to try to fit into the platform.
This is the main reason why as language geek, I always try to learn new languages and paradigms, but when it comes to production code I only use the platform languages.
No FFI headaches, no lack of tooling, first party support in the SDK, no messing around with alternative build systems, no issues hiring team members and so forth.
The way the languages "match" the environment in the first 3 examples is almost reciprocal to the way the language is a mismatch in the last one... "it just happened".
Also seeing those first 3 environments even listed with the last one somehow does not seem fitting... but is still a nice pictures of current "Zeitgeist" of computing and software development, imo.
Although I think if WebAssembly becomes a success, we will get the revenge of plugins.
I also never said Kotlin will replace Java, but that it will gradually grow to the detriment of Java, which is still here to stay.
In all these years of alternative languages customers still don't allow us to use anything other than plain Java.
Also there are acceptance reviews from customer teams.
That's because all those years those alternative languages never got much traction except Scale.
Kotlin is already poised to reach hundreds of thousands through Android support.
rust on unix (redoxos)
f# on .net (.net is supposed to support multiple languages)
elixir has successfully replaced erlang on BEAM for a lot of people.
webassembly is hot and you can always use js as a compiler target for some other language