3 ms·
I really love Scala, but I worry about its future given Google putting its weight behind Kotlin, and the two offering a lot of the same features and philosophy.
by bcherny 7y ago
I really love Scala, but I worry about its future given Google putting its weight behind Kotlin, and the two offering a lot of the same features and philosophy.
Does anyone know if the Scala maintainers have addressed this directly?
- xvilka 7y agoKotlin wins also because it has a stable and usable Native flavor. Scala Native is a third-party project and seems dead, while Kotlin Native is the core part of the Kotlin language and being developed at a fast pace.
- vips7L 7y agoI don't think this is relevant since both languages compile to JVM bytecode and Graal can compile that to native.
- pjmlp 7y agoKotlin/Native is not semantic compatible with Kotlin code written for the JVM without any regard for other platform's existence. Then there is the total lack of access to the huge JVM eco-system, a less performant automatic memory system, and AOT playing catchup with AOT/JIT tooling available for the JVM, some of which with battlefield experience in production since the early 2000's. And then there is the whole thing that JetBrains gladly sells CLion licenses for the whole development experience with Kotlin/Native.
- hocuspocus 7y ago* If you use even half of Scala's functional capabilities, Kotlin isn't really an alternative. * What Google does with Kotlin and Android is completely irrelevant to the Scala ecosystem and its users. * On the back-end side, Kotlin doesn't intersect that much with Scala. I haven't met anyone migrating from say, Play to Spring thanks to Kotlin's support. * In the big data world, if you rely heavily on Spark, Scala is still the preferred option on the JVM. Python is a much bigger threat there. * Lightbend and the Scala center have been seriously working on tooling, which is the biggest issue to address compared to Kotlin (Jetbrains has a huge advantage here).
- EdwardDiego 7y ago> I haven't met anyone migrating from say, Play to Spring thanks to Kotlin's support. Hi, now you have :) Well, Vert.x and Ktor, not so much Spring Boot. It's mainly because effective and readable Scala requires a lot more discipline and experience than effective Kotlin for a Java developer. If we'd started solely with experienced Scala devs then I suspect we wouldn't have had an issue. There is, also, the problem of footguns - we've inherited a large Scala codebase from a sister company, and they, unfortunately, let the devs run free. So there's large amounts of hard to debug, hard to read, Scala magic going on. Implicit classes, inherited three levels deep! Macros! Why? Because they could!