Do you think Scala will be the dominant JVM langauge, ie be the next Java? [on hold]
- by user1037729
From what I've read about Scala do far I think it has some nice features but I do not think it should be "the next Java". It might however end up being the next Java (due to fashion rather than fact) but lets not hope it does not...
To me adds a lot of complexity over Java which is a simple and scalable language.
Scala Pattern matching allows you to perform some type/value checking in a more concise way, this is possible in Java, Scala's pattern matching has a limit to it, you cannot continuously match deeper and deeper down the object graph, so why not just stick to Java and use decent invariants?
Scala provides tuples, easy enough to make in Java, create a static factory method and it all reads nicely too.
Scala provides mixins, why not just use composition?
I believe Scala implicit's are bad, they can lead to code becoming complex and hard to maintain, explicitness is good.
Scala provides closures, well they will be in Java 8 too.
Scala has lazy keyword for lazy instantiation, this is easy enough to do in Java by calling a getter which creates the instance when needed, no hidden magic here.
Scala can be used with AKKA, well so can Java, there is an Java AKKA implementation.
Scala offers addition functional features but these can all be created in Java, there are many frameworks with have implemented functional features in Java.
All in all Scala seems to offer is addition complexity and thats it...