News for hackers. Stuff that matters.
Re:JEP 286: Local-Variable Type Inference by andyfleming on Thursday March 10, 2016 @02:03PM (#11261310)
This would definitely be a nice language feature to see in Java. It's one (of many) of the reasons I'm attracted to Kotlin (https://kotlinlang.org/).
Re:JEP 286: Local-Variable Type Inference by dloose on Thursday March 10, 2016 @03:52PM (#11262198)
Ceylon (http://ceylon-lang.org) has it too! Sorry. I just like Ceylon
Re:JEP 286: Local-Variable Type Inference by nikolay on Thursday March 10, 2016 @04:39PM (#11262602)
With all the fuzz behind Kotlin, just because JetBrains, I am surprised that Ceylon has so little awareness! Ceylon, which has great features, multiple compilation targets (can't wait for the LLVM backend), has a great entity backing it (Red Had), and is created by a celebrity (at least in the Java world) developer (Gavin King)!
Re:JEP 286: Local-Variable Type Inference by ubertaco on Friday March 11, 2016 @06:00AM (#11265879)
Yeah, and it seems like a good project, but some downsides are that it has to support multiple compilation targets (which can split a language into multiple ecosystems), has only one major user (Red Hat), and was created by Gavin King
Re:JEP 286: Local-Variable Type Inference by nikolay on Friday March 11, 2016 @06:25AM (#11265951)
Red Hat > JetBrains though - I doubt Kotlin has a much bigger user base. Plus, being created by Gavin King is good, not bad. Also, multiple compilation targets are considered a plus in other languages (like Dart) - why is this bad for Ceylon? Especially when it along with Java it does not rely on native libraries like most of the other languages like Python, Ruby, and Node.js - it can be very useful and you don't need projects such as GWT if you can compile Ceylon to JavaScript directly.
Re:JEP 286: Local-Variable Type Inference by ubertaco on Friday March 11, 2016 @07:33AM (#11266202)
Kotlin's got more "noise" around it lately though, so I suspect adoption will be quicker. Also, GMC is bigger than Red Hat, and while Telegram is smaller for sure, it's got a decent amount of weight to it. Both use Kotlin (at least according to the Kotlin homepage).

Gavin King is famous for three things in the Java world: creating the leaky-abstraction-riddled ORM Hibernate that never quite behaves the way you want, creating the never-really-used DI lib Seam that is notorious for being difficult to test and configure (despite standardized "javax" APIs), and being a difficult personality to work with.

Multiple compilation targets are a downside when: - It means that as a user of the language I have to write different code because the collections/scoping on one target behave much differently than on another - It means that as a maintainer of the language, I have to try to make core language features work with multiple very-different compilation targets, making the codebase N times harder to maintain, and usually meaning either that the language stagnates for long periods or that one platform is treated as "primary" and the others are second-class citizens that trail behind (see Scala on the JVM vs Scala.js, Clojure vs Clojurescript, F# vs Websharper, etc).