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

Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfSumit Tiwari
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docxPoojaSen20
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfakmcokerachita
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 

Recently uploaded (20)

Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docx
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdf
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 

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.