Live data from Hacker News

Scala 2.13 is now available

scala-lang.org

31–40 of 87 posts

Re: Scala 2.13 is now available

#31

Earlier quoted context omitted.

I used Scala five-ish years ago, and I loved it, but I had two qualms: 1. The community was terribly split between FP purists who wanted to write Haskell on the JVM and pragmatists who leaned more towards the "better Java" side of things. Plus the occasional ex-Rubyists who came up with method names consisting solely of interpunction ("embedded DSL!"). Has any side won? It would be nice to have anything resembling "i…

Compilation times have improved substantially: https://scala-ci.typesafe.com/grafana/dashboard/db/scala-ben...

2.13 seems to be a very marginal improvement over 2.12 so it seems to be business as usual re compilation.

Re: Scala 2.13 is now available

#32
post #31

Earlier quoted context omitted.

Compilation times have improved substantially: https://scala-ci.typesafe.com/grafana/dashboard/db/scala-ben...

2.13 seems to be a very marginal improvement over 2.12 so it seems to be business as usual re compilation.

Yes but I asked since 5 years ago, not since last release. Thanks aphexairlines, that's great to hear!

Re: Scala 2.13 is now available

#33
post #31

Earlier quoted context omitted.

Compilation times have improved substantially: https://scala-ci.typesafe.com/grafana/dashboard/db/scala-ben...

2.13 seems to be a very marginal improvement over 2.12 so it seems to be business as usual re compilation.

By that graph, 2.13 is 17% faster than 2.12. I'd call that more than marginal.

And as always with benchmarks, your workload may give you different results. 2.13 will especially help with code bases that heavily use the collections library.

Re: Scala 2.13 is now available

#34
post #31

Earlier quoted context omitted.

Compilation times have improved substantially: https://scala-ci.typesafe.com/grafana/dashboard/db/scala-ben...

2.13 seems to be a very marginal improvement over 2.12 so it seems to be business as usual re compilation.

Both IDEA/IntelliJ and sbt (probably both utilizing the same compiler library/features underneath) can do incremental compilation, which is very fast. (You get autocompletion suggestions in IDEA as you type, the reload-incrementalcompile cycle using Play is now spent mostly in spinning up the app after reload not in compilation, etc.)

Yes, compiling a ~200 file project from scratch takes ~5 minutes, but it has scalaz, shapeless and a ton of other libraries, but this is basically only required when you import/open the project for the first time.

Re: Scala 2.13 is now available

#35
post #29
post #18

I personally really like how this release turned out. Tons of polish, cleanup, simplification, and performance work. Basically tackling the core problems with the language, with minimal feature creep or additional complexity (I must admit to contributing to that creep in a small way)

I guess there's always "one more feature", but to me it feels like Scala stopped frustratingly just short of getting the language design right. Partial type application is frustratingly cumbersome. For the last 3 releases or so - which is what, 6 years of language development? - people have been using the kind-projector plugin to the point that it's now pretty much entrenched. Any kind of built in solution - even if…

w.r.t. type lambdas and enums, AFAIK they’re working on it. See https://contributors.scala-lang.org/t/announcing-dotty-0-16-...

Re: Scala 2.13 is now available

#36
post #3

Why is Scala not more popular? It seems like such an awesome language, is it because of it academic origins or because it's not functional enough?

There are well established programming languages for every single niche requirement. What's Scalas unique selling point? Where are they supposed to get/"steal" their users from?

At a concrete use case level, it's a language where you can write Java- or C#-like code with no "magic": no reflection, no AOP, none of the stuff that tends to be the biggest cause of bugs in real-world Java/C# codebases. All of the stuff that you would need reflection or AOP (or metaclasses or macros, in other languages) for, you can do in plain old Scala code.

In the abstract, it's the only mainstream language to offer both higher-kinded types and traditional OO ("extends") inheritance. From one side it offers all the good stuff of OCaml, F#, Swift, Kotlin, or Rust, but with a better type system that makes handling secondary concerns via "context-like" types a breeze. From the other side, it offers similar power to Haskell, but with more understandable performance, a better library/tool ecosystem (IDE, profiler and so on), less reliance on memory-unsafe code in practice (a lot of things in Haskell require C-wrapping libraries for things like image formats, whereas the corresponding cases in Scala wrap Java instead), and the ability to use traditional OO style if you want.

Re: Scala 2.13 is now available

#37
Really liking this release. It trims off some confusing and redundant features while making substantial improvements in scala's bread and butter blocks - collections and futures. Type system changes are neat as well

Re: Scala 2.13 is now available

#38
post #3

Why is Scala not more popular? It seems like such an awesome language, is it because of it academic origins or because it's not functional enough?

Most of my background is in Python, but I've dabbled in a lot of languages out there from Haskell, lisp, Perl...etc. The point being I don't mind trying new things. I don't know Java and the JVM very well though and a lot of hosted languages like Scala, Clojure, Kotlin...etc seem to assume that you're intimately familiar with it which is a pain. Also, the Scala tooling when I last checked ~2 years ago was complex. I just wanted to write a simple app and started drowning in the complexity of SBT and gave up pretty quick. Your mileage may vary, especially if you're already familiar with the Java ecosystem. I've had more success with F# and OCaml.

Note that I'm not saying Scala is bad, it just wasn't an easy enough transition for me to justify climbing the plateau. Clojure ended up being a similar situation. These languages are also optimized around writing large software projects and that was a hindrance rather than a benefit to someone that does more scripting than anything.

Re: Scala 2.13 is now available

#39
post #8

Earlier quoted context omitted.

I've been turned off of it by SBT in the past.

A lot of Java shops moved from Maven to Gradle, and Gradle builds Scala projects: https://docs.gradle.org/current/userguide/scala_plugin.html Bazel works well too: https://github.com/bazelbuild/rules_scala

Maven itself works fine. In nine years of Scala I've never understood what problem SBT is supposed to solve - it seems very complicated to no real benefit.

Re: Scala 2.13 is now available

#40
post #31

Earlier quoted context omitted.

Compilation times have improved substantially: https://scala-ci.typesafe.com/grafana/dashboard/db/scala-ben...

2.13 seems to be a very marginal improvement over 2.12 so it seems to be business as usual re compilation.

actually all graphs are using projects that compile in under a minute. even the scala compiler is relativly small compared to average size scala projects. the gain is way bigger in projects that have clean compile times above 1 minute.
Post reply on HN