Re: JEP update: Classes for the Basic Primitives

2022-02-09 Thread Kevin Bourrillion
Some much-delayed feedback/questions * Could the doc make a clearer distinction (throughout) between which facts about int/Integer are happening because we expect *all* bucket-3 classes to work that way, vs. which are special one-off tweaks for the 8 predefined types? * I'm curious whether it

Re: Abstract class with fields implementing ValueObject

2022-02-09 Thread John Rose
That could be one of very many edge conditions in the JVMS that are not diagnosed directly by a validation, but that will eventually cause an error when the broken classfile is further used. I don’t think there needs to be a special rule for this. We don’t try to comprehensively diagnose all “

Re: [External] : Re: SoV-2: weak references

2022-02-09 Thread Brian Goetz
On 2/9/2022 1:23 PM, Kevin Bourrillion wrote: This is not based on a very deep understanding, sorry: * WeakReference, 1-arg constructor: When given a bucket 2-or-3 instance, it seems maybe fine to just treat as strong reference? User is saying "just hold this loosely, don't keep it alive on

Abstract class with fields implementing ValueObject

2022-02-09 Thread Frederic Parain
There's a weird case that seems to be allowed by the Value Objects JVMS draft: An abstract class can declare non-static fields, which means it won't have the ACC_PERMITS_VALUE flag set, but also declare that it implements the ValueObject interface. The combination looks just wrong, because no c

Re: EG meeting, 2022-02-09 [SoV-3: constructor questions]

2022-02-09 Thread John Rose
On 8 Feb 2022, at 19:04, Dan Smith wrote: "SoV-3: constructor questions": Dan asked about validation for and methods. Answer: JVM doesn't care about methods in abstract classes, the rules about methods still uncertain. On the question of JVM validation of `` methods, I’m in favor of as f

Re: [External] : Re: SoV-2: weak references

2022-02-09 Thread Kevin Bourrillion
This is not based on a very deep understanding, sorry: * WeakReference, 1-arg constructor: When given a bucket 2-or-3 instance, it seems maybe fine to just treat as strong reference? User is saying "just hold this loosely, don't keep it alive on my account" and doesn't care what happens after that

Re: [External] : Re: SoV-2: weak references

2022-02-09 Thread Brian Goetz
I have come around to a similar conclusion.  None of the models for WR(value) are really all that justifiable, other than "throws".  But we dislike that because so much code uses WHM that we are worried about this code all of a sudden failing.  But we are trying to fix that by distorting WR, ra

Re: SoV-2: weak references

2022-02-09 Thread Remi Forax
- Original Message - > From: "Dan Heidinga" > To: "Brian Goetz" > Cc: "valhalla-spec-experts" > Sent: Wednesday, February 9, 2022 5:50:29 PM > Subject: Re: SoV-2: weak references > One option is to look at what we can do to help users prepare for IAE > when using value-based classes as

Re: SoV-2: weak references

2022-02-09 Thread Dan Heidinga
One option is to look at what we can do to help users prepare for IAE when using value-based classes as keys to WHM. Can we take an approach similar to JEP 390 [1] and provide JFR events that flag uses of value-based classes as keys? It's not perfect but similar to JEP 390, it does help users to