SlideShare a Scribd company logo
1 of 8
Download to read offline
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

What's hot

Ekon20 mORMot SOA Delphi Conference
Ekon20 mORMot SOA Delphi Conference Ekon20 mORMot SOA Delphi Conference
Ekon20 mORMot SOA Delphi Conference Arnaud Bouchez
 
Coupling Semantic MediaWiki with MASTRO
Coupling Semantic MediaWiki with MASTROCoupling Semantic MediaWiki with MASTRO
Coupling Semantic MediaWiki with MASTROAlbin Ahmeti
 
Understanding Redux — Ilya Gelman
Understanding Redux — Ilya GelmanUnderstanding Redux — Ilya Gelman
Understanding Redux — Ilya Gelman500Tech
 
Monoliths are so 2001 – What you need is Modularity
Monoliths are so 2001 – What you need is ModularityMonoliths are so 2001 – What you need is Modularity
Monoliths are so 2001 – What you need is ModularityGraham Charters
 
Ruby Meets Cocoa
Ruby Meets CocoaRuby Meets Cocoa
Ruby Meets CocoaRobbert
 
[Java Colombo Meetup] The better java for Java microservices developers
[Java Colombo Meetup] The better java for Java microservices developers[Java Colombo Meetup] The better java for Java microservices developers
[Java Colombo Meetup] The better java for Java microservices developersBallerinalang
 

What's hot (7)

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

Similar to Advanced java course

JavaFest. Вадим Казулькин. Projects Valhalla, Loom and GraalVM
JavaFest. Вадим Казулькин. Projects Valhalla, Loom and GraalVMJavaFest. Вадим Казулькин. Projects Valhalla, Loom and GraalVM
JavaFest. Вадим Казулькин. Projects Valhalla, Loom and GraalVMFestGroup
 
Projects Valhalla, Loom and GraalVM at virtual JavaFest 2020 in Kiev, Ukraine...
Projects Valhalla, Loom and GraalVM at virtual JavaFest 2020 in Kiev, Ukraine...Projects Valhalla, Loom and GraalVM at virtual JavaFest 2020 in Kiev, Ukraine...
Projects Valhalla, Loom and GraalVM at virtual JavaFest 2020 in Kiev, Ukraine...Vadym Kazulkin
 
Highlights from Java 10-13 and Future of Java at JCON 2019 by Alukhanov and K...
Highlights from Java 10-13 and Future of Java at JCON 2019 by Alukhanov and K...Highlights from Java 10-13 and Future of Java at JCON 2019 by Alukhanov and K...
Highlights from Java 10-13 and Future of Java at JCON 2019 by Alukhanov and K...Vadym Kazulkin
 
Projects Valhalla and Loom at IT Tage 2021
Projects Valhalla and Loom at IT Tage 2021Projects Valhalla and Loom at IT Tage 2021
Projects Valhalla and Loom at IT Tage 2021Vadym Kazulkin
 
Projects Valhalla, Loom and GraalVM at JUG Mainz
Projects Valhalla, Loom and GraalVM at JUG MainzProjects Valhalla, Loom and GraalVM at JUG Mainz
Projects Valhalla, Loom and GraalVM at JUG MainzVadym Kazulkin
 
JavaScript development methodology
JavaScript development methodologyJavaScript development methodology
JavaScript development methodologyAleksander Fabijan
 
Hacking Java - Enhancing Java Code at Build or Runtime
Hacking Java - Enhancing Java Code at Build or RuntimeHacking Java - Enhancing Java Code at Build or Runtime
Hacking Java - Enhancing Java Code at Build or RuntimeSean P. Floyd
 
Classes and Objects
Classes and ObjectsClasses and Objects
Classes and ObjectsPrabu U
 
GWT – The Java Advantage
GWT – The Java AdvantageGWT – The Java Advantage
GWT – The Java AdvantageYoav Aharoni
 
Lagergren jvmls-2014-final
Lagergren jvmls-2014-finalLagergren jvmls-2014-final
Lagergren jvmls-2014-finalMarcus Lagergren
 
Scala adoption by enterprises
Scala adoption by enterprisesScala adoption by enterprises
Scala adoption by enterprisesMike Slinn
 
The Why and How of Scala at Twitter
The Why and How of Scala at TwitterThe Why and How of Scala at Twitter
The Why and How of Scala at TwitterAlex Payne
 
An introduction to Node.js
An introduction to Node.jsAn introduction to Node.js
An introduction to Node.jsKasey McCurdy
 
Projects Valhalla, Loom and GraalVM at JCon 2020
Projects Valhalla, Loom and GraalVM at JCon 2020Projects Valhalla, Loom and GraalVM at JCon 2020
Projects Valhalla, Loom and GraalVM at JCon 2020Vadym Kazulkin
 
Hacking Java @JavaLand2016
Hacking Java @JavaLand2016Hacking Java @JavaLand2016
Hacking Java @JavaLand2016Sean P. Floyd
 
Highlights from Java 10, 11 and 12 and Future of Java at Javaland 2019 By Vad...
Highlights from Java 10, 11 and 12 and Future of Java at Javaland 2019 By Vad...Highlights from Java 10, 11 and 12 and Future of Java at Javaland 2019 By Vad...
Highlights from Java 10, 11 and 12 and Future of Java at Javaland 2019 By Vad...Vadym Kazulkin
 

Similar to Advanced java course (20)

JavaFest. Вадим Казулькин. Projects Valhalla, Loom and GraalVM
JavaFest. Вадим Казулькин. Projects Valhalla, Loom and GraalVMJavaFest. Вадим Казулькин. Projects Valhalla, Loom and GraalVM
JavaFest. Вадим Казулькин. Projects Valhalla, Loom and GraalVM
 
Projects Valhalla, Loom and GraalVM at virtual JavaFest 2020 in Kiev, Ukraine...
Projects Valhalla, Loom and GraalVM at virtual JavaFest 2020 in Kiev, Ukraine...Projects Valhalla, Loom and GraalVM at virtual JavaFest 2020 in Kiev, Ukraine...
Projects Valhalla, Loom and GraalVM at virtual JavaFest 2020 in Kiev, Ukraine...
 
Highlights from Java 10-13 and Future of Java at JCON 2019 by Alukhanov and K...
Highlights from Java 10-13 and Future of Java at JCON 2019 by Alukhanov and K...Highlights from Java 10-13 and Future of Java at JCON 2019 by Alukhanov and K...
Highlights from Java 10-13 and Future of Java at JCON 2019 by Alukhanov and K...
 
Introduction to Scala
Introduction to ScalaIntroduction to Scala
Introduction to Scala
 
Projects Valhalla and Loom at IT Tage 2021
Projects Valhalla and Loom at IT Tage 2021Projects Valhalla and Loom at IT Tage 2021
Projects Valhalla and Loom at IT Tage 2021
 
java new technology
java new technologyjava new technology
java new technology
 
Projects Valhalla, Loom and GraalVM at JUG Mainz
Projects Valhalla, Loom and GraalVM at JUG MainzProjects Valhalla, Loom and GraalVM at JUG Mainz
Projects Valhalla, Loom and GraalVM at JUG Mainz
 
JavaScript development methodology
JavaScript development methodologyJavaScript development methodology
JavaScript development methodology
 
Hacking Java - Enhancing Java Code at Build or Runtime
Hacking Java - Enhancing Java Code at Build or RuntimeHacking Java - Enhancing Java Code at Build or Runtime
Hacking Java - Enhancing Java Code at Build or Runtime
 
Classes and Objects
Classes and ObjectsClasses and Objects
Classes and Objects
 
GWT – The Java Advantage
GWT – The Java AdvantageGWT – The Java Advantage
GWT – The Java Advantage
 
Java 9 sneak peek
Java 9 sneak peekJava 9 sneak peek
Java 9 sneak peek
 
Lagergren jvmls-2014-final
Lagergren jvmls-2014-finalLagergren jvmls-2014-final
Lagergren jvmls-2014-final
 
Scala adoption by enterprises
Scala adoption by enterprisesScala adoption by enterprises
Scala adoption by enterprises
 
The Why and How of Scala at Twitter
The Why and How of Scala at TwitterThe Why and How of Scala at Twitter
The Why and How of Scala at Twitter
 
An introduction to Node.js
An introduction to Node.jsAn introduction to Node.js
An introduction to Node.js
 
Comp102 lec 3
Comp102   lec 3Comp102   lec 3
Comp102 lec 3
 
Projects Valhalla, Loom and GraalVM at JCon 2020
Projects Valhalla, Loom and GraalVM at JCon 2020Projects Valhalla, Loom and GraalVM at JCon 2020
Projects Valhalla, Loom and GraalVM at JCon 2020
 
Hacking Java @JavaLand2016
Hacking Java @JavaLand2016Hacking Java @JavaLand2016
Hacking Java @JavaLand2016
 
Highlights from Java 10, 11 and 12 and Future of Java at Javaland 2019 By Vad...
Highlights from Java 10, 11 and 12 and Future of Java at Javaland 2019 By Vad...Highlights from Java 10, 11 and 12 and Future of Java at Javaland 2019 By Vad...
Highlights from Java 10, 11 and 12 and Future of Java at Javaland 2019 By Vad...
 

More from faizrashid1995

Android Developer Training
Android Developer TrainingAndroid Developer Training
Android Developer Trainingfaizrashid1995
 
Android Developer Training
Android Developer TrainingAndroid Developer Training
Android Developer Trainingfaizrashid1995
 
Big data and apache hadoop adoption
Big data and apache hadoop adoptionBig data and apache hadoop adoption
Big data and apache hadoop adoptionfaizrashid1995
 
Big Data Courses In Mumbai
Big Data Courses In MumbaiBig Data Courses In Mumbai
Big Data Courses In Mumbaifaizrashid1995
 
Python Classes In Thane
Python Classes In ThanePython Classes In Thane
Python Classes In Thanefaizrashid1995
 
python classes in thane
python classes in thanepython classes in thane
python classes in thanefaizrashid1995
 
Hadoop training in mumbai
Hadoop training in mumbaiHadoop training in mumbai
Hadoop training in mumbaifaizrashid1995
 
android development training in mumbai
android development training in mumbaiandroid development training in mumbai
android development training in mumbaifaizrashid1995
 

More from faizrashid1995 (12)

Hadoop Training
Hadoop TrainingHadoop Training
Hadoop Training
 
Android Developer Training
Android Developer TrainingAndroid Developer Training
Android Developer Training
 
Android Developer Training
Android Developer TrainingAndroid Developer Training
Android Developer Training
 
Big data and apache hadoop adoption
Big data and apache hadoop adoptionBig data and apache hadoop adoption
Big data and apache hadoop adoption
 
What is hadoop
What is hadoopWhat is hadoop
What is hadoop
 
What is python
What is pythonWhat is python
What is python
 
The mean stack
The mean stackThe mean stack
The mean stack
 
Big Data Courses In Mumbai
Big Data Courses In MumbaiBig Data Courses In Mumbai
Big Data Courses In Mumbai
 
Python Classes In Thane
Python Classes In ThanePython Classes In Thane
Python Classes In Thane
 
python classes in thane
python classes in thanepython classes in thane
python classes in thane
 
Hadoop training in mumbai
Hadoop training in mumbaiHadoop training in mumbai
Hadoop training in mumbai
 
android development training in mumbai
android development training in mumbaiandroid development training in mumbai
android development training in mumbai
 

Recently uploaded

18. Training and prunning of horicultural crops.pptx
18. Training and prunning of horicultural crops.pptx18. Training and prunning of horicultural crops.pptx
18. Training and prunning of horicultural crops.pptxUmeshTimilsina1
 
Objectives n learning outcoms - MD 20240404.pptx
Objectives n learning outcoms - MD 20240404.pptxObjectives n learning outcoms - MD 20240404.pptx
Objectives n learning outcoms - MD 20240404.pptxMadhavi Dharankar
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...Nguyen Thanh Tu Collection
 
6 ways Samsung’s Interactive Display powered by Android changes the classroom
6 ways Samsung’s Interactive Display powered by Android changes the classroom6 ways Samsung’s Interactive Display powered by Android changes the classroom
6 ways Samsung’s Interactive Display powered by Android changes the classroomSamsung Business USA
 
MS4 level being good citizen -imperative- (1) (1).pdf
MS4 level   being good citizen -imperative- (1) (1).pdfMS4 level   being good citizen -imperative- (1) (1).pdf
MS4 level being good citizen -imperative- (1) (1).pdfMr Bounab Samir
 
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxGrade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxkarenfajardo43
 
The Emergence of Legislative Behavior in the Colombian Congress
The Emergence of Legislative Behavior in the Colombian CongressThe Emergence of Legislative Behavior in the Colombian Congress
The Emergence of Legislative Behavior in the Colombian CongressMaria Paula Aroca
 
Vinícius Portella In Media Res Media Component
Vinícius Portella In Media Res Media ComponentVinícius Portella In Media Res Media Component
Vinícius Portella In Media Res Media ComponentInMediaRes1
 
Transdisciplinary Pathways for Urban Resilience [Work in Progress].pptx
Transdisciplinary Pathways for Urban Resilience [Work in Progress].pptxTransdisciplinary Pathways for Urban Resilience [Work in Progress].pptx
Transdisciplinary Pathways for Urban Resilience [Work in Progress].pptxinfo924062
 
Farrington HS Streamlines Guest Entrance
Farrington HS Streamlines Guest EntranceFarrington HS Streamlines Guest Entrance
Farrington HS Streamlines Guest Entrancejulius27264
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationdeepaannamalai16
 
4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptxmary850239
 
Shark introduction Morphology and its behaviour characteristics
Shark introduction Morphology and its behaviour characteristicsShark introduction Morphology and its behaviour characteristics
Shark introduction Morphology and its behaviour characteristicsArubSultan
 
Jason Potel In Media Res Media Component
Jason Potel In Media Res Media ComponentJason Potel In Media Res Media Component
Jason Potel In Media Res Media ComponentInMediaRes1
 
DBMSArchitecture_QueryProcessingandOptimization.pdf
DBMSArchitecture_QueryProcessingandOptimization.pdfDBMSArchitecture_QueryProcessingandOptimization.pdf
DBMSArchitecture_QueryProcessingandOptimization.pdfChristalin Nelson
 
Indexing Structures in Database Management system.pdf
Indexing Structures in Database Management system.pdfIndexing Structures in Database Management system.pdf
Indexing Structures in Database Management system.pdfChristalin Nelson
 
CHUYÊN ĐỀ ÔN THEO CÂU CHO HỌC SINH LỚP 12 ĐỂ ĐẠT ĐIỂM 5+ THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN THEO CÂU CHO HỌC SINH LỚP 12 ĐỂ ĐẠT ĐIỂM 5+ THI TỐT NGHIỆP THPT ...CHUYÊN ĐỀ ÔN THEO CÂU CHO HỌC SINH LỚP 12 ĐỂ ĐẠT ĐIỂM 5+ THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN THEO CÂU CHO HỌC SINH LỚP 12 ĐỂ ĐẠT ĐIỂM 5+ THI TỐT NGHIỆP THPT ...Nguyen Thanh Tu Collection
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...Nguyen Thanh Tu Collection
 

Recently uploaded (20)

18. Training and prunning of horicultural crops.pptx
18. Training and prunning of horicultural crops.pptx18. Training and prunning of horicultural crops.pptx
18. Training and prunning of horicultural crops.pptx
 
Objectives n learning outcoms - MD 20240404.pptx
Objectives n learning outcoms - MD 20240404.pptxObjectives n learning outcoms - MD 20240404.pptx
Objectives n learning outcoms - MD 20240404.pptx
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (GLOB...
 
Introduction to Research ,Need for research, Need for design of Experiments, ...
Introduction to Research ,Need for research, Need for design of Experiments, ...Introduction to Research ,Need for research, Need for design of Experiments, ...
Introduction to Research ,Need for research, Need for design of Experiments, ...
 
6 ways Samsung’s Interactive Display powered by Android changes the classroom
6 ways Samsung’s Interactive Display powered by Android changes the classroom6 ways Samsung’s Interactive Display powered by Android changes the classroom
6 ways Samsung’s Interactive Display powered by Android changes the classroom
 
MS4 level being good citizen -imperative- (1) (1).pdf
MS4 level   being good citizen -imperative- (1) (1).pdfMS4 level   being good citizen -imperative- (1) (1).pdf
MS4 level being good citizen -imperative- (1) (1).pdf
 
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxGrade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
 
The Emergence of Legislative Behavior in the Colombian Congress
The Emergence of Legislative Behavior in the Colombian CongressThe Emergence of Legislative Behavior in the Colombian Congress
The Emergence of Legislative Behavior in the Colombian Congress
 
Vinícius Portella In Media Res Media Component
Vinícius Portella In Media Res Media ComponentVinícius Portella In Media Res Media Component
Vinícius Portella In Media Res Media Component
 
Transdisciplinary Pathways for Urban Resilience [Work in Progress].pptx
Transdisciplinary Pathways for Urban Resilience [Work in Progress].pptxTransdisciplinary Pathways for Urban Resilience [Work in Progress].pptx
Transdisciplinary Pathways for Urban Resilience [Work in Progress].pptx
 
Farrington HS Streamlines Guest Entrance
Farrington HS Streamlines Guest EntranceFarrington HS Streamlines Guest Entrance
Farrington HS Streamlines Guest Entrance
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentation
 
4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx
 
Shark introduction Morphology and its behaviour characteristics
Shark introduction Morphology and its behaviour characteristicsShark introduction Morphology and its behaviour characteristics
Shark introduction Morphology and its behaviour characteristics
 
Jason Potel In Media Res Media Component
Jason Potel In Media Res Media ComponentJason Potel In Media Res Media Component
Jason Potel In Media Res Media Component
 
DBMSArchitecture_QueryProcessingandOptimization.pdf
DBMSArchitecture_QueryProcessingandOptimization.pdfDBMSArchitecture_QueryProcessingandOptimization.pdf
DBMSArchitecture_QueryProcessingandOptimization.pdf
 
Chi-Square Test Non Parametric Test Categorical Variable
Chi-Square Test Non Parametric Test Categorical VariableChi-Square Test Non Parametric Test Categorical Variable
Chi-Square Test Non Parametric Test Categorical Variable
 
Indexing Structures in Database Management system.pdf
Indexing Structures in Database Management system.pdfIndexing Structures in Database Management system.pdf
Indexing Structures in Database Management system.pdf
 
CHUYÊN ĐỀ ÔN THEO CÂU CHO HỌC SINH LỚP 12 ĐỂ ĐẠT ĐIỂM 5+ THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN THEO CÂU CHO HỌC SINH LỚP 12 ĐỂ ĐẠT ĐIỂM 5+ THI TỐT NGHIỆP THPT ...CHUYÊN ĐỀ ÔN THEO CÂU CHO HỌC SINH LỚP 12 ĐỂ ĐẠT ĐIỂM 5+ THI TỐT NGHIỆP THPT ...
CHUYÊN ĐỀ ÔN THEO CÂU CHO HỌC SINH LỚP 12 ĐỂ ĐẠT ĐIỂM 5+ THI TỐT NGHIỆP THPT ...
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 - I-LEARN SMART WORLD - CẢ NĂM - CÓ FILE NGHE (BẢN...
 

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.