6 ms·
This is great not unfortunate. If Java improves because of Scala and Kotlin then so much the better, this is how languages evolve. If it really does evolve to r
by jmfldn 5y ago
This is great not unfortunate. If Java improves because of Scala and Kotlin then so much the better, this is how languages evolve. If it really does evolve to remove the need for a better Java then it would be nice if people switched away from Kotlin and back to it. Scala can then carry on cementing its niche as a powerful commercial FP language. No hate for Kotlin at all but it seems like in that world, there might be no need for it. Scala is better for FP and if Java 17 is the better Java then great.
- cutler 5y agoAndroid will always be Kotlin-first. That's a pretty huge market.
- jpgvm 5y agoI think people underestimate how deep this integration is going. Compose relies on extensions to the Kotlin compiler. The future of Android and Kotlin are pretty much tied together at this point.
- jayd16 5y agoAndroid used to be always Java first. It could change again.
- vbezhenar 5y agoMost likely to Flutter. When Google will be ready to ditch Android API.
- hota_mazi 5y agoAndroid is based on the JVM, it will never switch to Flutter (and an aggravating factor is that Dart is an inferior version of Kotlin).
- pjmlp 5y agoIf you want some fun watching Jake Wartorn's opinion on it, https://youtu.be/VX6nAvRWQg4 https://youtu.be/VX6nAvRWQg4
- morelisp 5y agoThe JVM is specifically the part of Java Android didn't use, and the layer Google has already completely replaced once.
- pjmlp 5y agoDEX must be able to represent everything on the Java ecosystem, otherwise it is a hit and miss what can be consumed from Maven central. Also it is quite common on embedded Java for the vendors to have their own implementation with code translation. What isn't normal is having stagnant compatibility.
- xvilka 5y agoJava is an Android's curse. Just compare how completely native iOS and iPadOS beat it in terms of speed and power saving. I hope they will get rid of the Java remnants completely and focus on the native toolchain, frameworks, system libraries.
- xxpor 5y agoMeanwhile there's a article literally on the front page about zero-click exploits being used against iMessage
- jpgvm 5y agoTo be honest I see Kotlin continuing to exist because of it's multi-platform nature and it's focus being on different things to Java. So even if feature wise the 2 equalize (a good thing not a bad thing IMO) stylistic differences will remain. Many of Kotlins syntactic differences are unlikely to make it to Java for instance. I'm ok with this. I use both for different things. Kotlin for most app level development, Kotlin for libraries that are only useful in the context of Kotlin, Java for everything else so it has minimal dependencies and can be used from Kotlin/Scala/Java/Clojure equally well.
- jmfldn 5y agoHmm yes I guess you might be right given Android. It's a shame in a way that Kotlin was invented as Scala could have filled the niche too imho but that ship has sailed. It's too similar to both Java and Scala and doesn't really bring anything new to the table. Is that fair or does it have a great USP other than massive Google backing?
- jpgvm 5y agoI don't think Scala ever could have filled that niche, I say this as someone that wanted Scala to be successful. The truth of it is that Kotlin is incredibly easy to learn, even for non-Java devs. It is definitely focused on a very low barrier to entry. I don't think this was an original goal but it's become a significant focus of the language especially after being selected to be the next platform language for Android. This isn't true of Scala at all. Beyond things like SBT, comparatively poor IDE support (less of an issue these days) it is also just a very complex language, with many complicated semantics in it's standard library and even more complex/fancy 3rd party libraries piled on top of that. Scala became an incredibly powerful language, not a simple or easy to use one however. Kotlin is a very user friendly language that is easy to learn but still has enough power to keep most expressiveness focussed devs happy. Beyond the learning curve Kotlin integrates with Java a lot better, calling in both directions. These 2 factors alone probably account for why it was chosen over Scala for Android and in general why it has value over both Java and Scala. I think with Gradle moving from Groovy -> Kotlin, Android obviously and big companies adopting Kotlin w/Spring on the backend the ship has indeed sailed for Scala, it doesn't really have a place outside of places that specifically want a more FP lang.