3 ms·
I think this depends on how you define complexity. It's true that the Scala spec is shorter than the Java spec, but Scala has a number of very powerful features
by cageface 15y ago
I think this depends on how you define complexity. It's true that the Scala spec is shorter than the Java spec, but Scala has a number of very powerful features that can interact with each other in very intricate ways. I can pretty comfortably fit the handful of core ideas in Java in my head but I don't feel this way about Scala.
I have enjoyed writing Scala code, but I'm pessimistic enough about its longevity that I haven't been doing any side projects in it for a while.
- michaelochurch 15y agoI have enjoyed writing Scala code, but I'm pessimistic enough about its longevity that I haven't been doing any side projects in it for a while. What do you think will replace it? I don't see any real candidates. Java would be dead (in the sense of Cobol being "dead") by 2014 if not for Scala and Clojure. And what holds back contenders like Ocaml and Haskell (which are great languages, but I don't see growth in them in the next 10 years, although I wish I did) is the lack of libraries. Even though the average Java developer shouldn't be allowed anywhere near a computer, there are still thousands of well-above-average Java developers (now moving to Scala) who are writing great libraries. In 2020, we might see something related to Go replacing Java as the mid-level/VM language of choice, and that might produce a "GoScala" or a "GoCaml" with access to Go libraries, but we're a long way away from that.
- cageface 15y agoIf I had to guess I'd say something like Kotlin is a better bet. Java needs to evolve but Scala is a step too far.
- jdefarge 15y agoI don't see any candidate either, and it will not be Scala, for sure. I think Scala will continue to be a pretty interesting language, used in pretty cool places, for a smart and enthusiastic community, as Haskell or Clojure, but it will not replace Java as the major JVM language not even in a million years. Smart engineers will develop in Scala, Assembly, Lisp, whatever, but it's the average developer who accounts for the use of a language worldwide. And Scala will loose those developers from the start. I also agree that Java will be dead by 2014, but not as COBOL. It will be dead as C language is dead. Java is the C of the XXI century.