News for hackers. Stuff that matters.
Re:Scala 2.12.0 is now available by lmm on Thursday November 03, 2016 @01:41PM (#12866158)
> If you're okay with using old Java versions, it's not much of a stretch to say you'll be okay with old Scala versions.

No, because Scala doesn't offer forward binary or source compatibility. Maintainers of widely-used Java libraries can write and build for Java 6 and be confident their libraries will be usable by everyone (on Android and off). Maintainers of widely-used Scala libraries have no such option (for now they can write their code using the subset that works in Scala 2.11 and 2.12 and cross-build, but there's no guarantee that such a subset will be maintained in 2.13 and beyond).

Re:Scala 2.12.0 is now available by paulddraper on Thursday November 03, 2016 @04:57PM (#12867881)
> there's no guarantee that such a subset will be maintained

There's no guarantee about Java either. This class compiles with Java 7, but not with Java 8:

    class SampleClass {
        static class Baz<T> {
            public static java.util.List<Baz<Object>> sampleMethod(Baz<Object> param) {
                return null;
            }
        }
 
        private static void bar(Baz arg) {
            Baz element = Baz.sampleMethod(arg).get(0);
        }
    }
Like Java or any other good software, Scala will try to maintain backwards compatibility (particularly source compatibility).
Re:Scala 2.12.0 is now available by lmm on Thursday November 03, 2016 @06:05PM (#12868426)
> There's no guarantee about Java either. This class compiles with Java 7, but not with Java 8:

Ok, but you can compile it with the newer compiler by passing -source 1.7, right? And you can call into it from 1.8 code?

Re:Scala 2.12.0 is now available by paulddraper on Friday November 04, 2016 @01:23PM (#12874263)
Yes, binary compatibility is maintained in this case.