Java Language & PlatformJava Language & Platform
Deep Dive180min
INTERMEDIATE

Will Valhalla Fix Tony's Billion-Dollar Mistake?

Java 28’s Valhalla project introduces preview value classes, enabling JVM optimizations like stack scalarization and heap flattening. The talk explores compatibility, revised Java semantics, nullability, construction behavior, performance, type safety, and new coding patterns, while outlining future Valhalla enhancements.

talk.summaryAiDisclaimer

José Paumard
José PaumardOracle
Remi Forax
Remi ForaxUniversity Gustave Eiffel

talkDetail.whenAndWhere

Tuesday, October 6, 09:30-12:30
TBA 6
talks.roomOccupancytalks.noOccupancyInfo
talks.description
In March 2027, in JDK 28 (JVM gods willing!), after more than 12 years of effort, the Valhalla project will deliver its first feature: Value Classes (JEP 401) as a preview feature. Value classes are defined as regular classes with a "value" keyword in front. They are backward compatible with your code written before Java 28, without you having to recompile it.
Value classes bring new optimization opportunities at the JVM level: scalarization on stack and flattening on heap. For that, the Java specification had to be reinterpreted and enhanced, challenging us to reconsider some of the fundamentals on which Java was created 30 years ago. What does == mean? Is a reference always a pointer? Can an instance of a value class be null? Can you observe the transition between the default values and the final values of fields during object construction? And more.
This presentation covers all these questions, showing the trade-offs that need to be made in order to bring value classes to the Java platform.
You will hear about new code patterns, performance, and type safety. And, as value classes are just the first step, we will cover what Valhalla should bring in the future.
performance
valhalla
value classes
jvm
talks.speakers
José Paumard

José Paumard

Oracle

France

José is a Java Developer Advocate at Oracle. He holds a PhD in applied mathematics and computer science and is a Java Champion alumnus. He has been an assistant professor at the University Sorbonne Paris Nord for 25 years. He is an active member of the Paris Java User Group, and a disorganizer of the JChateau unconference. He contributes Java learning content on the dev.java website. He publishes "Java Coding Tips", a biweekly series of shorts, and the "JEP Café", a video series, both on the Java YouTube channel.
Remi Forax

Remi Forax

University Gustave Eiffel

France

Tenured associate professor at Université Gustave Eiffel (Paris) and longtime OpenJDK member researching runtime environments (Java VM, .NET). He has contributed to major Java features including invokedynamic (JSR 292), Lambda (JSR 335), and the Jigsaw module system (JSR 376), and currently works on OpenJDK's Amber (records, pattern matching) and Valhalla (value types) projects. He's also the main contributor to the ASM bytecode library.
A frequent conference speaker (Devoxx France, FOSDEM), he regularly presents on modern Java features like virtual threads, structured concurrency, and value types.