The JNV / JS / Native targets are also really promising, though I haven't played around with them much. The JS and Native runtimes are a bit limited since they don't include the Java standard library, from what I can tell.
I think that they ship with the Kotlin standard library which is close enough.
> various lisps have been doing it for decades
There's an insanely long road from having a prototype of a language to having a production ready thing. There isn't a lisp where I could achieve the same experience.
It isnt a mature enough language to be trusted so soon, no body has a sufficient enough industry grade experience with it. Especially with large code bases.
I mean, Google adopted it as a first class citizen language on android which counts for something.
> no body has a sufficient enough industry grade experience with it. Especially with large code bases.
There aren't really any "new" features in Kotlin, as in features you haven't seen before. If you've been programming Java and know some Haskell/Ocaml or idk what else, you are good to go.
Something but not much. It works on JVM, talk to all Java libs and tooling is taken care by Intellij. It is low or little effort from Google to support. Unlike other language fans who clamor for Android support from Google, here hard work is done by someone else. So Google support looks most like a co-branding deal.
C/C++ can do that if you accept Emscripten.
Java can do that if you accept GWT.
Though I think what really sets it apart (on the web side) is that it interops pretty well with other js libs.
I think what sets it apart is the interopability with it's current targets. Really slick
Edit:fixed typo
Yeah, pls no.
> Java can do that if you accept GWT.
Yeah, I don't. Google abandoned it, you should too.
Lisps have been doing this since forever (including the now defunct LinJ for Java which compiled into code that was very often mistaken for hand-written Java).
Hell, Emscripten takes everything LLVMable and gives it that ability.
> This is unprecedented.
Only for sufficiently narrow "this".
Don't get me wrong, I like Kotlin, but Ceylon did the multi platform thing much better.
They have real platform modules, built into the language (not just a build tool trick), and a language specification that was written from the start with multiple platforms in mind.
But it never took off (yet), and Kotlin's support is good enough, so it will have to do I guess :).
The group’s pretty quiet at the moment whilst we’re building up the community but stick with us as we’re aiming to grow it rapidly.
https://publicslack.com/slacks/https-venturisvoice-slack-com...
With Kotlin you'll be running compiled code. If you wanted to right now though, you could (should be able to?) use Kotlin to build a React Native app with it's just target.
[1] https://blog.jetbrains.com/kotlin/2017/04/use-kotlin-with-np...
I like kotlin for several reasons but this one isn't on the top of my list. If you like cross-platform development, you might want to check out haxe.
For JS, you can use all you favorite front-end frameworks like react (here's an example by JetBrains themselves https://github.com/Kotlin/kotlin-fullstack-sample) or cycle. And you can import typescript definitions.
Also first class IDE integration.
So yeah, bright future is an understatement.
I guess clojure/clojurescript and scala.js are somewhat similar however I feel like Kotlin has an insane amount of momentum behind it right now.