What is Minimal Values Type?

Bjorn Vardal from IBM and Frederic Parain from Oracle report about value types being explored in the Value Types Valhalla project
08 August 2017   1907

To provide a path towards earlier community involvement and feedback from early adopters, the Valhalla Value Types project is working on an experimental initial implementation step. The intent is to explore a subset of JVM changes that would be required to support Value Types, without exposing them through the Java language compiler. Through a clever use of MethodHandles and byte code generation, we can give an early taste of some of the capabilities of Value Types. This talk will focus on the subset of Value Types provided in the Minimal Value Types, models of usage,some of the design trade-offs we are making to provide a coherent subset and touch on some of the open issues.

Minimal Value Types is an early access preview of value types being explored in the Value Types Valhalla project. It has been built on top of early results from the project. This talk will review several of the key changes made to JVMs to support value types, covering the representation of value types in the JVM model (stack slot, experimental bytecodes, signatures). Possible strategies to implement and optimize value type handling will be presented, covering also data layout with the opportunity value types offer to be flattened in arrays or fields, and the consequence of this flattening on type dependencies and class loading/resolution. This talk will also present the new JIT optimizations put in place for value types, the modification the bytecode verification needs with the introduction of value types into the Java type system, and some early performance results

TIOBE Index June 2019 to be Rolled Out

Java is still on the top, but experts noted fast growth of Python search queries, and they believe it can reach 1st place in 3-4 years
13 June 2019   214

June 2019 TIOBE Index has been released. Analysts noted a sharp increase in the proportion of searches for Python.

This month Python has reached again an all time high in TIOBE index of 8.5%. If Python can keep this pace, it will probably replace C and Java in 3 to 4 years time, thus becoming the most popular programming language of the world. The main reason for this is that software engineering is booming. It attracts lots of newcomers to the field. Java's way of programming is too verbose for beginners. In order to fully understand and run a simple program such as "hello world" in Java you need to have knowledge of classes, static methods and packages. In C this is a bit easier, but then you will be hit in the face with explicit memory management. In Python this is just a one-liner. 


Experts attributed the growing popularity of Python to the fact that now many have hit the development of software. And newcomers prefer Python - succinct and concise. According to analysts, Java for beginners is too verbose, and C sooner or later will force to understand the intricacies of memory management.