How does Scala solve any of the problems with Java?
It has a generics system that makes a lot more sense (allowing covariant/contravariant types, rather than forcing use-site variance everywhere).
Case classes are wonderful for making simple data classes easy to read (and write).
Honestly Scala is all about solving the pain points with Java, so just look at anything that's been written about it. http://www.scala-lang.org/
Does it actually solve any real problems?
Does it fix GC performance? Does it fix API issues? Does it remove the need for JNI bindings to native code?
No?
Implicits make it much easier to deal with API issues.
These problems are not solvable by any language.
How does Scala solve any of the problems with Java?