SlideShare a Scribd company logo
JAVA’S FUTURE-LOOKING PROJECTS: PANAMA,
LOOM, AMBER, AND VALHALLA
HTTP://WWW.ASTERIXSOLUTION.COM/JAVA-TRAINING.HTML
The press release “Oracle Code One Java Keynote Outlines the Future of Java” describes the Java Keynote
at Oracle Code “highlight[ing] future projects” Project Valhalla, Project Panama, Project Amber, and Project
Loom. This post provides brief summaries of each of these projects and some recent work associated with
each of these projects for those who may not be familiar with the mentioned projects.
• Project Panama
• Project Panama is about “Interconnecting JVM and native code.” Its introduction states, “We are
improving and enriching the connections between the Java TM virtual machine and well-defined but
‘foreign’ (non-Java) APIs, including many interfaces commonly used by C programmers.”
• Build 0 (2018/10/24) of the Project Panama Early-Access Builds was released recently. As with other
OpenJDK-related early access builds, this build is “intended for expert users” and “is provided as a
convenience so that they don’t need to build from the source code.” One of its most significant issues to
be aware of is, “Windows support not available.”
• Project Loom
• The Project Loom page describes Loom: “The goal of this Project is to explore and incubate Java VM
features and APIs built on top of them for the implementation of lightweight user-mode threads
(fibers), delimited continuations (of some form), and related features, such as explicit tail-call.”
• The Project Loom proposal (titled “Project Loom: Fibers and Continuations for the Java Virtual
Machine“) begins, “Project Loom’s mission is to make it easier to write, debug, profile and maintain
concurrent applications meeting today’s requirements.”
• The message “Kick off meeting for Project Loom” on the OpenJDK loom-dev mailing list states that
“Project Loom has been up and running here for number of months doing some early exploration and
prototyping of both delimited continuations and fibers.” That message talks about expanding that effort
with kick-off meeting and provides links to the aforementioned Project Loom Proposal and to the
YouTube-hosted presentation “Project Loom with Ron Pressler and Alan Bateman.”
• Project Amber
• The Project Amber page describes its goal “to explore and incubate smaller, productivity-oriented Java
language features that have been accepted as candidate JEPs under the OpenJDK JEP process.” There
are some exciting features being explored via this project including Pattern Matching (JEP 305), Switch
Expressions (JEP 325), Raw String Literals (JEP 326), Concise Method Bodies (draft JEP), and faster
String.format and Objects.hash methods [JDK-8205637 (“Optimized invocation of String::format and
Objects::hash”)].
• Project Valhalla
• All of these projects propose exciting additions to Java, but the one I’m most excited about is Project
Valhalla and its Value Objects/Types (JEP 169). The Project Valhalla page describes this project’s goal “to
provide a venue to explore and incubate advanced Java VM and Language feature candidates.”
Project Valhalla has seen significant developments in recent weeks, especially since and as a result of
the Valhalla Executive Group Meeting on 10 October 2018. In the OpenJDK valhalla-spec-experts mailing
list message “Entering the next phase of Project Valhalla,” Brian Goetz writes that this meeting was a
“super-productive meeting with broad attendance” that helped Valhalla developers “to thrash out where
we are, and where we’re going next.” Goetz also states that “this marks the beginning of the Phase III of
the project” and outlines what constituted Phase 1 and Phase 2. This same packed message also
summarizes the next steps for Valhalla:
Another recent interesting Goetz message on the valhalla-spec experts mailing list is “Values and erased
generics,” in which Goetz provides a “a summary of the story we came up with for erased generics over
values” that “builds on the typing story outlined in John’s ‘Q-Types in L-World‘ writeup.” The title of that
referenced John Rose writeup is currently, “Q-Types in L-World 10: Valhalla Working Group, Burlington,
September 2018.” A revision of proposed JVM specification changes for LW2 was announced earlier this
month as well.
• The amount of work being done related to Project Valhalla is made clear in the number of messages on
the mailing list about this project. These include those previously mentioned as well as others such as
“var, static factory method and value type constructor“; “Value types, encapsulation, and uninitialized
values“; and “Array covariance“.
• There is also a series of Goetz messages focusing on specific lessons learned from the first two phases:
• “[LW100] Specialized generics — translation and binary compatibility issues”“Challenges of evolving a
class to be any-generic, while interacting with existing erased code.”
• “[LW100] Specialized generics — migration”
• “Stories we cooked up for migration.”
• “[LW100] Specialized generics — user model issues”
• “User model and source compatibility of migrating existing libraries”
• The OpenJDK valhalla-dev mailing list message “Valhalla project repository status: Branched off ‘LW1’ in
preparation for ‘LW2’” announces the creation of the “lw1” branch.
• Conclusion
• It’s not surprising that these four projects were mentioned at Oracle Code One’s Java Keynote. They
cover many of the features to look forward to in Java’s future.
www.asterixsolution.com
www.facebook.com/asterixsolutionlab
www.plus.google.com/+Asterixsolutionlab

More Related Content

PPTX
OpenDaylight and YANG
PPS
Deawsj 7 ppt-1_b
PDF
Next.js with drupal, the good parts
PDF
OpenCms Days 2014 - How Techem handles international customer portals
PDF
Real Life Clean Architecture
PDF
Java 9, JShell, and Modularity
PPT
Javascript
PDF
React-js
OpenDaylight and YANG
Deawsj 7 ppt-1_b
Next.js with drupal, the good parts
OpenCms Days 2014 - How Techem handles international customer portals
Real Life Clean Architecture
Java 9, JShell, and Modularity
Javascript
React-js

What's hot (7)

PDF
Ekon20 mORMot SOA Delphi Conference
PPTX
Coupling Semantic MediaWiki with MASTRO
PDF
Understanding Redux — Ilya Gelman
PDF
Monoliths are so 2001 – What you need is Modularity
PDF
Ruby Meets Cocoa
PDF
[Java Colombo Meetup] The better java for Java microservices developers
PPTX
Presentation1.pptx
Ekon20 mORMot SOA Delphi Conference
Coupling Semantic MediaWiki with MASTRO
Understanding Redux — Ilya Gelman
Monoliths are so 2001 – What you need is Modularity
Ruby Meets Cocoa
[Java Colombo Meetup] The better java for Java microservices developers
Presentation1.pptx
Ad

Similar to Advanced java course (20)

PDF
The future of Java
PDF
Projects Valhalla, Loom and GraalVM at JUG Mainz
PDF
JavaFest. Вадим Казулькин. Projects Valhalla, Loom and GraalVM
PDF
Projects Valhalla, Loom and GraalVM at virtual JavaFest 2020 in Kiev, Ukraine...
PPTX
Projects Valhalla, Loom and GraalVM at JCon 2020
PDF
Highlights from Java 10-13 and Future of Java at JCON 2019 by Alukhanov and K...
PDF
Projects Valhalla and Loom DWX 2022
PDF
Highlights from Java 10, 11 and 12 and Future of Java at Javaland 2019 By Vad...
PDF
Projects Valhalla and Loom at IT Tage 2021
PDF
Java jdk-update-nov10-sde-v3m
PPTX
Trends and future of java
PDF
Valencia EMEA Java User Group Summit
PDF
Jax keynote
PDF
Jozi-JUG JDK 9 Unconference
PDF
Java 8 selected updates
PDF
JavaOne Latin America Participate in Shaping Java's Future
PDF
A Quick Tour of JVM Languages
PPTX
A tour of Java and the JVM
PDF
Above and Beyond JDK 9, 10, 11, 12... - Branko Mihaljević and Martin Žagar on...
The future of Java
Projects Valhalla, Loom and GraalVM at JUG Mainz
JavaFest. Вадим Казулькин. Projects Valhalla, Loom and GraalVM
Projects Valhalla, Loom and GraalVM at virtual JavaFest 2020 in Kiev, Ukraine...
Projects Valhalla, Loom and GraalVM at JCon 2020
Highlights from Java 10-13 and Future of Java at JCON 2019 by Alukhanov and K...
Projects Valhalla and Loom DWX 2022
Highlights from Java 10, 11 and 12 and Future of Java at Javaland 2019 By Vad...
Projects Valhalla and Loom at IT Tage 2021
Java jdk-update-nov10-sde-v3m
Trends and future of java
Valencia EMEA Java User Group Summit
Jax keynote
Jozi-JUG JDK 9 Unconference
Java 8 selected updates
JavaOne Latin America Participate in Shaping Java's Future
A Quick Tour of JVM Languages
A tour of Java and the JVM
Above and Beyond JDK 9, 10, 11, 12... - Branko Mihaljević and Martin Žagar on...
Ad

More from faizrashid1995 (12)

PPTX
Hadoop Training
PPTX
Android Developer Training
PPTX
Android Developer Training
PPTX
Big data and apache hadoop adoption
PPTX
What is hadoop
PPTX
What is python
PPTX
The mean stack
PPTX
Big Data Courses In Mumbai
PPTX
Python Classes In Thane
PPTX
python classes in thane
PPTX
Hadoop training in mumbai
PPTX
android development training in mumbai
Hadoop Training
Android Developer Training
Android Developer Training
Big data and apache hadoop adoption
What is hadoop
What is python
The mean stack
Big Data Courses In Mumbai
Python Classes In Thane
python classes in thane
Hadoop training in mumbai
android development training in mumbai

Recently uploaded (20)

PPTX
B.Sc. DS Unit 2 Software Engineering.pptx
PDF
احياء السادس العلمي - الفصل الثالث (التكاثر) منهج متميزين/كلية بغداد/موهوبين
PDF
1_English_Language_Set_2.pdf probationary
PDF
David L Page_DCI Research Study Journey_how Methodology can inform one's prac...
PDF
Trump Administration's workforce development strategy
PPTX
A powerpoint presentation on the Revised K-10 Science Shaping Paper
PDF
Hazard Identification & Risk Assessment .pdf
DOC
Soft-furnishing-By-Architect-A.F.M.Mohiuddin-Akhand.doc
PDF
Weekly quiz Compilation Jan -July 25.pdf
PDF
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
PDF
What if we spent less time fighting change, and more time building what’s rig...
PDF
1.3 FINAL REVISED K-10 PE and Health CG 2023 Grades 4-10 (1).pdf
PDF
Chinmaya Tiranga quiz Grand Finale.pdf
PPTX
Share_Module_2_Power_conflict_and_negotiation.pptx
PDF
FOISHS ANNUAL IMPLEMENTATION PLAN 2025.pdf
PDF
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
PPTX
CHAPTER IV. MAN AND BIOSPHERE AND ITS TOTALITY.pptx
PDF
advance database management system book.pdf
PDF
Computing-Curriculum for Schools in Ghana
PDF
Practical Manual AGRO-233 Principles and Practices of Natural Farming
B.Sc. DS Unit 2 Software Engineering.pptx
احياء السادس العلمي - الفصل الثالث (التكاثر) منهج متميزين/كلية بغداد/موهوبين
1_English_Language_Set_2.pdf probationary
David L Page_DCI Research Study Journey_how Methodology can inform one's prac...
Trump Administration's workforce development strategy
A powerpoint presentation on the Revised K-10 Science Shaping Paper
Hazard Identification & Risk Assessment .pdf
Soft-furnishing-By-Architect-A.F.M.Mohiuddin-Akhand.doc
Weekly quiz Compilation Jan -July 25.pdf
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
What if we spent less time fighting change, and more time building what’s rig...
1.3 FINAL REVISED K-10 PE and Health CG 2023 Grades 4-10 (1).pdf
Chinmaya Tiranga quiz Grand Finale.pdf
Share_Module_2_Power_conflict_and_negotiation.pptx
FOISHS ANNUAL IMPLEMENTATION PLAN 2025.pdf
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
CHAPTER IV. MAN AND BIOSPHERE AND ITS TOTALITY.pptx
advance database management system book.pdf
Computing-Curriculum for Schools in Ghana
Practical Manual AGRO-233 Principles and Practices of Natural Farming

Advanced java course

  • 1. JAVA’S FUTURE-LOOKING PROJECTS: PANAMA, LOOM, AMBER, AND VALHALLA HTTP://WWW.ASTERIXSOLUTION.COM/JAVA-TRAINING.HTML
  • 2. The press release “Oracle Code One Java Keynote Outlines the Future of Java” describes the Java Keynote at Oracle Code “highlight[ing] future projects” Project Valhalla, Project Panama, Project Amber, and Project Loom. This post provides brief summaries of each of these projects and some recent work associated with each of these projects for those who may not be familiar with the mentioned projects. • Project Panama • Project Panama is about “Interconnecting JVM and native code.” Its introduction states, “We are improving and enriching the connections between the Java TM virtual machine and well-defined but ‘foreign’ (non-Java) APIs, including many interfaces commonly used by C programmers.”
  • 3. • Build 0 (2018/10/24) of the Project Panama Early-Access Builds was released recently. As with other OpenJDK-related early access builds, this build is “intended for expert users” and “is provided as a convenience so that they don’t need to build from the source code.” One of its most significant issues to be aware of is, “Windows support not available.” • Project Loom • The Project Loom page describes Loom: “The goal of this Project is to explore and incubate Java VM features and APIs built on top of them for the implementation of lightweight user-mode threads (fibers), delimited continuations (of some form), and related features, such as explicit tail-call.”
  • 4. • The Project Loom proposal (titled “Project Loom: Fibers and Continuations for the Java Virtual Machine“) begins, “Project Loom’s mission is to make it easier to write, debug, profile and maintain concurrent applications meeting today’s requirements.” • The message “Kick off meeting for Project Loom” on the OpenJDK loom-dev mailing list states that “Project Loom has been up and running here for number of months doing some early exploration and prototyping of both delimited continuations and fibers.” That message talks about expanding that effort with kick-off meeting and provides links to the aforementioned Project Loom Proposal and to the YouTube-hosted presentation “Project Loom with Ron Pressler and Alan Bateman.” • Project Amber • The Project Amber page describes its goal “to explore and incubate smaller, productivity-oriented Java language features that have been accepted as candidate JEPs under the OpenJDK JEP process.” There are some exciting features being explored via this project including Pattern Matching (JEP 305), Switch Expressions (JEP 325), Raw String Literals (JEP 326), Concise Method Bodies (draft JEP), and faster String.format and Objects.hash methods [JDK-8205637 (“Optimized invocation of String::format and Objects::hash”)].
  • 5. • Project Valhalla • All of these projects propose exciting additions to Java, but the one I’m most excited about is Project Valhalla and its Value Objects/Types (JEP 169). The Project Valhalla page describes this project’s goal “to provide a venue to explore and incubate advanced Java VM and Language feature candidates.” Project Valhalla has seen significant developments in recent weeks, especially since and as a result of the Valhalla Executive Group Meeting on 10 October 2018. In the OpenJDK valhalla-spec-experts mailing list message “Entering the next phase of Project Valhalla,” Brian Goetz writes that this meeting was a “super-productive meeting with broad attendance” that helped Valhalla developers “to thrash out where we are, and where we’re going next.” Goetz also states that “this marks the beginning of the Phase III of the project” and outlines what constituted Phase 1 and Phase 2. This same packed message also summarizes the next steps for Valhalla: Another recent interesting Goetz message on the valhalla-spec experts mailing list is “Values and erased generics,” in which Goetz provides a “a summary of the story we came up with for erased generics over values” that “builds on the typing story outlined in John’s ‘Q-Types in L-World‘ writeup.” The title of that referenced John Rose writeup is currently, “Q-Types in L-World 10: Valhalla Working Group, Burlington, September 2018.” A revision of proposed JVM specification changes for LW2 was announced earlier this month as well.
  • 6. • The amount of work being done related to Project Valhalla is made clear in the number of messages on the mailing list about this project. These include those previously mentioned as well as others such as “var, static factory method and value type constructor“; “Value types, encapsulation, and uninitialized values“; and “Array covariance“. • There is also a series of Goetz messages focusing on specific lessons learned from the first two phases: • “[LW100] Specialized generics — translation and binary compatibility issues”“Challenges of evolving a class to be any-generic, while interacting with existing erased code.” • “[LW100] Specialized generics — migration” • “Stories we cooked up for migration.” • “[LW100] Specialized generics — user model issues” • “User model and source compatibility of migrating existing libraries”
  • 7. • The OpenJDK valhalla-dev mailing list message “Valhalla project repository status: Branched off ‘LW1’ in preparation for ‘LW2’” announces the creation of the “lw1” branch. • Conclusion • It’s not surprising that these four projects were mentioned at Oracle Code One’s Java Keynote. They cover many of the features to look forward to in Java’s future.