Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Similarly, I can't get excited about Kotlin's features because they're all things I've been using for 5 years already in Scala.


Does Scala/sbt still take 5 years to compile moderately sized apps?


Kotlin syntax is a well-thought subset of Scala.

The designers basically removed everything that made Scala slow to process and hard to optimize. As a side-effect, Kotlin is much easier to read and understand than Scala.


They've had to add back a lot of things piecemeal as they realised they'd missed important use cases for Scala's more general features as they tried to "simplify" them. The language's history so far suggests the original design was far from well-thought, and I expect that trend to continue in a more visible way post-1.0.

(E.g. as applications get larger you tend to need to understand the reasons for why something didn't happen, so you move from Option on to using an Either-style type that carries some information in the failure case. But Kotlin is hardcoded around using null to express absence and it's impossible to migrate from that to something that includes a reason).


That's what I feel as well. I feel that Scala started "too big" and gets "slimmed down" over time (like, implicit is now not-so-recommended), while Kotlin goes the other way around. I still prefer Scala whenever possible, but Kotlin really shines for Android (I tried Scala, I couldn't stand build time on top of the already-long Android build).


> Kotlin is much easier to read and understand than Scala.

No. It's not.


I've programmed Scala professionally for the last 4 years. The compiler used to be rather slow, but nowadays, it is fast enough for my taste. Just be careful with the cake-pattern, which slows down compilation substantially.

Also, I notice that, as I write type-safe code, I don't usually compile that often and, when it compiles, it is likely correct.


It's down to 4 years give or take.


It has improved somewhat. Also with incremental compilation, compile times aren't really an issue.


I think it is on par with other "slow" language compilers that perform to inference: Kotlin, Swift, Haskell

The incremental compilation is pretty good.


ICE BURN




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: