I'll talk about what's new in Scala 2.12, how Scala is still more suited for functional programming than Java 8, and give you a quick glimpse of what's next in Scala 2.13. Scala 2.12's backend takes full advantage of the improved support for functional programming on the Java 8 platform. Little has changed on the "outside" since Scala 2.11, but we have given the compiler internals a significant overhaul. Additionally, Scala 2.12 ships with a new optimizer! In this talk, we'll see how Scala functions compile to the same byte code as in Java 8 and explain the simplified encoding of Scala traits as Java 8 interfaces. We'll also look at the cohesive set of language features and design principles that make functional programming such a joy in Scala.