Scala 2.12 & Java 8: More Fun Together!
summary
Scala 2.12 compiles Scala lambdas to Java 8 bytecode using invokedynamic lambdas, so function objects become Java SAM instances and jars ship far fewer anonymous classes; traits now map directly to interfaces (traits to interfaces) while the compiler uses invokedynamic for some cached bootstraps. The backend switches to ASM and a new optimizer (based on Miguel Garcia’s work) replaces the old gen code (new ASM backend, optimizer based on Miguel Garcia). Release M4 is on Maven, targets Java 8, and reduces bytecode size and runtime allocation; a few minor source incompatibilities required fixes in the community build.
AI-written summary · about
chapters (8)
- 0:00Start
- 5:24Scala Center
- 6:19Compiler Release
- 10:19Parallel Collections
- 10:47Macros
- 22:40Invoke Dynamic Bass Lambdas
- 23:08Single Abstract Methods
- 35:15Functional Programming








