Valhalla EG 20200129

Frederic Parain frederic.parain at oracle.com
Wed Jan 29 17:57:36 UTC 2020


# Valhalla EG Meeting 20200129

Dan S., Remi, Brian, Dan (IBM), Tobi (IBM) 

  Brian:
	language side implementation:
	compiler support to inject InlineObject/IdentityObject super-types at compilation time
	some issues with reflection code assuming type hierarchy


  Remi:
	Annotation of j.l.Object


  Brian:
	j.l.Object is not annotated by either  InlineObject or IdentityObject


  Remi:
	new Object()?

  Brian:
	new Object() will be the instanciation of an abtract class subclass of j.l.Object
	push people to move away from this construct with new way to get an Object.

  Remi:
	could be in the IdentityObject interface

  Brian:
	working on reference projection as an interface or an abstract class
	possible update next week, working on simplification
	would lead to rewrite of "State of Valhalla"

  Remi:
	did analysis of static fields set at VM startup but not read (bytecode level analysis)

  Brian:
	Lazy static: push people to initalize at time of declaration
	but issue with checked exception => reasons why people at initializing fields
	in big static initializers
	we need a construct in the language to declare a lazy static with shared throw
	clause for all lazy static fields

  Remi:
	Foreign Memory Access API: issue with VarHandles and checked exceptions
	Talk at Brest JUG:
	     no questions about Records, but a lot of questions about instanceof
	     lot of confusion between inline types and records

  Brian:
	arithmetic benchmarks being developped
	mixed results
	      HashMap:
		optimized for many years
		lot of corner cases

  Remi:
	did some experiments with HashMap
	saw benefits only if both key and values are in-lined

  Brian:
	issue with big flattened values => lot of data to be moved
	need to educate people about algorithms/designs that work or don't work with inline types

  Remi:
	references Google's fluent API to re-work abstractions

  Brian:
	hope that using inline types for lambdas would help escape analysis getting it right

  Dan (IBM):
      is there a JDK release targeted for Valhalla?

  Brian:
	too early to say
	VM work is consolidating
	language work still needs significant work before having a road-map
	
  	first release won't have all the features but have to have further additions in mind

	next Valhalla off-site probably during spring

  Remi:
	John wants to move to a specialized generics prototype


  Fred:
	start with a simpler specialized generics model so language and VM teams can work in parallel:
	VM team extending VM data structures (constant pool patching)
	language team working on full specialization model

  Brian:
	retrofitting of Integer: seemed impossible, but now seems more feasible
	


More information about the valhalla-spec-experts mailing list