Conference50min
What’s happening with Project Amber?
Project Amber is advancing Java’s data-oriented programming with new pattern-matching features: user-defined deconstruction, nested constant patterns, exhaustive matching, safer primitive conversions, and compact record reconstruction. The talk explores experimental designs, their benefits, and the language design challenges they introduce.
talk.summaryAiDisclaimer
Gavin BiermanOracle
talkDetail.whenAndWhere
Friday, October 9, 10:40-11:30
TBA 4
talks.roomOccupancytalks.noOccupancyInfo
Project Amber has introduced a series of Java language features that together
enable a new programming style: data oriented programming. At its core is
compositional pattern matching, which allows values to be deconstructed
naturally and safely.
Where does Project Amber go from here? This talk explores the next wave of
language features under development. These experiments extend pattern matching
in several directions, including user-defined deconstruction for ordinary
interfaces and classes, nested constant patterns for more compact and expressive
matching, an exhaustive pattern-matching statement, safer primitive value
conversions within pattern matching, and a compact notation for deconstructing
and constructing record instances — a process we call reconstruction.
Along the way, I’ll present some of the experimental designs we’re exploring,
discussing both the opportunities they create and the language design challenges
they raise.
enable a new programming style: data oriented programming. At its core is
compositional pattern matching, which allows values to be deconstructed
naturally and safely.
Where does Project Amber go from here? This talk explores the next wave of
language features under development. These experiments extend pattern matching
in several directions, including user-defined deconstruction for ordinary
interfaces and classes, nested constant patterns for more compact and expressive
matching, an exhaustive pattern-matching statement, safer primitive value
conversions within pattern matching, and a compact notation for deconstructing
and constructing record instances — a process we call reconstruction.
Along the way, I’ll present some of the experimental designs we’re exploring,
discussing both the opportunities they create and the language design challenges
they raise.
Gavin Bierman
I work in the Java Platform Group at Oracle designing the Java programming language and virtual machine. I am also a member of the Programming Languages Research Group at Oracle Labs. I am based in Cambridge, UK.
My mission is to keep Java as a leading language and platform for developers around the world. Given my background as a researcher, I am especially keen to find, adapt and transfer ideas and techniques from the research community and get them into the hands of Java programmers. I spend much of my time working on Java’s industry-leading specifications.
I joined Oracle in March 2014. Previously I was a senior researcher at Microsoft Research Cambridge from March 2004 until February 2014. Before that I was a University Lecturer at the University of Cambridge Computer Laboratory and a Fellow, College Lecturer and Director of Studies at St John’s College, Cambridge. I studied for my PhD at the University of Cambridge, and for my BSc at Imperial College, London.
My mission is to keep Java as a leading language and platform for developers around the world. Given my background as a researcher, I am especially keen to find, adapt and transfer ideas and techniques from the research community and get them into the hands of Java programmers. I spend much of my time working on Java’s industry-leading specifications.
I joined Oracle in March 2014. Previously I was a senior researcher at Microsoft Research Cambridge from March 2004 until February 2014. Before that I was a University Lecturer at the University of Cambridge Computer Laboratory and a Fellow, College Lecturer and Director of Studies at St John’s College, Cambridge. I studied for my PhD at the University of Cambridge, and for my BSc at Imperial College, London.