Google Groups

Re: [scala-internals] Re: Scala 2.11 may require Java 7

Adriaan Moors Mar 27, 2013 10:51 AM
Posted in group: scala-user
First off, many thanks to everyone who's contributed to this thread.

I think it's time for a (two-folded) conclusion: (1) the bytecode we emit by default, and (2) the Java version we interoperate with.

Scala 2.11 will target Java 6 by default, but will provide an "experimental" Java 7 back-end.
Scala 2.12's default target will move past Java 6, probably straight to Java 8 (Java 8's adoption rate permitting).

Note that only the default back-end should be used to publish artifacts. We're working hard to make 2.11's experimental back-end fully functional, and representative of what will become 2.12's default back-end, but please keep it in mind it will be experimental in 2.11.

Scala 2.11 will provide the best Java 8 inter-op story we can implement modulo source compatibility requirements. (Please see the other thread I started about this on scala-internals regarding accepting SAMs in higher-order methods.)
Scala 2.12 will be able to provide a better story here, as it will target the same bytecode version as Java 8.