You can compile Kotlin to Javascript, as a start. You get the benefits and drawbacks of static typing and object-oriented (or rather "class-oriented", if we call Javascript object-oriented) programming support.
But if you choose to stay with the JVM, you get:
- the JVM - multithreaded, highly tuned and high performance JIT VM, well documented and continuously being improved
- mature tools
- libraries from the Java ecosystem - for pretty much anything you can think of
- coroutines (with Kotlin 1.1) for async support.
XML configuration is being phased out slowly (I guess you are talking about Spring here), in the last ~10 years annotations have become much more popular. You still have to support those legacy apps though.
This made me laugh: "then I thought of Java and images came up in my head of thousands and thousands of files being installed" - well, don't check your node_modules directory then, or you might be in for a surprise :)
And Kotlin is targeting LLVM too. It's too early to tell how that will work out considering that much of Kotlin is dependent upon Java libraries, but it's promising.
But if you choose to stay with the JVM, you get:
- the JVM - multithreaded, highly tuned and high performance JIT VM, well documented and continuously being improved
- mature tools
- libraries from the Java ecosystem - for pretty much anything you can think of
- coroutines (with Kotlin 1.1) for async support.
XML configuration is being phased out slowly (I guess you are talking about Spring here), in the last ~10 years annotations have become much more popular. You still have to support those legacy apps though.
This made me laugh: "then I thought of Java and images came up in my head of thousands and thousands of files being installed" - well, don't check your node_modules directory then, or you might be in for a surprise :)