jokerconf Joker 2018 (19.10.2018)

Lambda compilation and other gimmicks of modern JDKs

img

We explore the technical details of compiled lambda expressions and learn about the new JVM capabilities — which come with several performance benefits and could also be used for other JVM languages.

Комментарий Программного комитета:

Полезно продемонстрировать то, на какие ухищрения приходится идти рантайму, чтобы удовлетворить наши уютные языковые абстракции. Заставляет иначе смотреть на работу своего кода.

JVM implementation details behind Java Lambdas.

With Java 7 invokedynamic was added to the JVM instruction set and the concept of method handles was introduced — but not used at all by the Java language compiler. This changed the first time when Java 8 lambda expressions and method references were introduced. More tricks are introduced with Java 9 for efficient string operations.

In this session we explore the technical details of compiled lambda expressions and learn about the new JVM capabilities — which come with several performance benefits and could also be used for other JVM languages.