Re: User model stacking: current status

2022-06-14 Thread forax
> From: "Brian Goetz" > To: "Remi Forax" , "valhalla-spec-experts" > > Cc: "daniel smith" , "valhalla-spec-experts" > > Sent: Tuesday, June 14, 2022 3:16:41 PM > Subject: Re: User model stacking: current status [...]

Re: User model stacking: current status

2022-06-14 Thread Remi Forax
> From: "Brian Goetz" > To: "daniel smith" > Cc: "valhalla-spec-experts" > Sent: Tuesday, June 14, 2022 1:04:39 AM > Subject: Re: User model stacking: current status > I've done a little more shaking of this tree. It involves keeping the notion > that the non-identity buckets differ only in the

Re: Anonymous value classes

2022-06-07 Thread forax
- Original Message - > From: "daniel smith" > To: "Remi Forax" > Cc: "Maurizio Cimadamore" , "Brian Goetz" > , > "valhalla-spec-experts" > Sent: Monday, June 6, 2022 7:56:40 PM > Subject: Re: Anonymous value classe

Re: User model stacking: current status

2022-06-06 Thread Remi Forax
> From: "Brian Goetz" > To: "daniel smith" > Cc: "valhalla-spec-experts" > Sent: Friday, June 3, 2022 9:14:39 PM > Subject: Re: User model stacking: current status > Continuing to shake this tree. > I'm glad we went through the exploration of "flattenable B3.ref"; while I > think > we probabl

Re: Anonymous value classes

2022-06-04 Thread forax
> From: "Maurizio Cimadamore" > To: "Brian Goetz" , "Remi Forax" > Cc: "daniel smith" , "valhalla-spec-experts" > > Sent: Friday, June 3, 2022 8:18:44 PM > Subject: Re: Anonymous value classes > And `var` ? > (but

Re: Anonymous value classes

2022-06-03 Thread Remi Forax
- Original Message - > From: "daniel smith" > To: "valhalla-spec-experts" > Sent: Friday, June 3, 2022 6:18:42 PM > Subject: Re: Anonymous value classes >> On Jun 3, 2022, at 10:15 AM, Dan Smith wrote: >> >> Our javac prototype has long included support for a 'value' keyword after >>

Re: Anonymous value classes

2022-06-03 Thread Remi Forax
> From: "Brian Goetz" > To: "daniel smith" , "valhalla-spec-experts" > > Sent: Friday, June 3, 2022 6:21:26 PM > Subject: Re: Anonymous value classes > There is no chance to get any calling-convention optimization here, since the > concrete class name will not show up in any method descriptor (o

Re: User model stacking: current status

2022-05-09 Thread Remi Forax
> From: "Brian Goetz" > To: "daniel smith" > Cc: "valhalla-spec-experts" > Sent: Sunday, May 8, 2022 6:32:09 PM > Subject: Re: User model stacking: current status > To track the progress of the spiral: > - We originally came up with the B2/B3 division to carve off B2 as the "safe > subset", wh

Re: User model: terminology

2022-05-06 Thread forax
> From: "Kevin Bourrillion" > To: "Remi Forax" > Cc: "Brian Goetz" , "valhalla-spec-experts" > > Sent: Wednesday, May 4, 2022 11:42:21 PM > Subject: Re: User model: terminology > On Wed, May 4, 2022 at 8:44 AM Remi Forax < [ ma

Re: User model: terminology

2022-05-04 Thread Remi Forax
> From: "Brian Goetz" > To: "valhalla-spec-experts" > Sent: Wednesday, May 4, 2022 5:05:24 PM > Subject: User model: terminology > Let's talk about terminology. (This is getting dangerously close to a > call-for-bikeshed, so let's exercise restraint.) > Currently, we have primitives and classes

Re: Null channels (was: User model stacking)

2022-05-03 Thread Remi Forax
- Original Message - > From: "Brian Goetz" [...] > > What I'm trying to do here is decomplect flattening from nullity. Right > now, we have an unfortunate interaction which both makes certain > combinations impossible, and makes the user model harder to reason about. > > Identity-freed

Re: [External] : Re: User model stacking

2022-04-28 Thread forax
> From: "Kevin Bourrillion" > To: "Remi Forax" > Cc: "Brian Goetz" , "Dan Heidinga" > , "valhalla-spec-experts" > > Sent: Thursday, April 28, 2022 3:51:07 PM > Subject: Re: [External] : Re: User model stacking > On T

Re: [External] : Re: User model stacking

2022-04-28 Thread forax
> From: "Brian Goetz" > To: "Remi Forax" > Cc: "Dan Heidinga" , "valhalla-spec-experts" > > Sent: Thursday, April 28, 2022 3:43:59 PM > Subject: Re: [External] : Re: User model stacking >> On Apr 28, 2022, at 9:09 AM, Remi For

Re: [External] : Re: User model stacking

2022-04-28 Thread Remi Forax
> From: "Brian Goetz" > To: "Dan Heidinga" > Cc: "valhalla-spec-experts" > Sent: Thursday, April 28, 2022 1:15:08 AM > Subject: Re: [External] : Re: User model stacking > Let me try and put some more color on the bike shed (but, again, let’s focus > on > model, not syntax, for now.) > We have

Re: User model stacking

2022-04-27 Thread Remi Forax
- Original Message - > From: "Dan Heidinga" > To: "Brian Goetz" > Cc: "valhalla-spec-experts" > Sent: Wednesday, April 27, 2022 8:51:15 PM > Subject: Re: User model stacking > I'm trying to understand how this refactoring fits the VM physics. > > In particular, __non-atomic & __zero-ok

Re: User model stacking

2022-04-27 Thread Remi Forax
- Original Message - > From: "Brian Goetz" > To: "valhalla-spec-experts" > Sent: Wednesday, April 27, 2022 6:44:01 PM > Subject: User model stacking > Here’s some considerations for stacking the user model. (Again, please let’s > resist the temptation to jump to the answer and then defe

Re: On tearing

2022-04-27 Thread Remi Forax
> From: "Brian Goetz" > To: "valhalla-spec-experts" > Sent: Wednesday, April 27, 2022 3:59:31 PM > Subject: On tearing > Several people have asked why I am so paranoid about tearing. This mail is > about > tearing; there’ll be another about user model stacking and performance models. > (Please,

Re: We need help to migrate from bucket 1 to 2; and, the == problem

2022-04-26 Thread Remi Forax
> From: "Kevin Bourrillion" > To: "valhalla-spec-experts" > Sent: Tuesday, April 26, 2022 5:12:54 AM > Subject: We need help to migrate from bucket 1 to 2; and, the == problem > So I want to make my class identityless. But -- whoops! -- I released it years > ago and it has lots of usages. And th

Re: B3 ref model

2022-04-26 Thread forax
- Original Message - > From: "Brian Goetz" > To: "Remi Forax" > Cc: "daniel smith" , "valhalla-spec-experts" > > Sent: Tuesday, April 26, 2022 4:12:43 PM > Subject: Re: B3 ref model >> so if we have >> >> pr

Re: B3 ref model

2022-04-26 Thread forax
- Original Message - > From: "daniel smith" > To: "Remi Forax" > Cc: "valhalla-spec-experts" > Sent: Tuesday, April 26, 2022 2:15:17 AM > Subject: Re: B3 ref model >> On Apr 25, 2022, at 3:08 PM, Remi Forax wrote: >> >

B3 ref model

2022-04-25 Thread Remi Forax
Ok, maybe i've not understood correctly how B3 model works, for me being a B3 is a runtime property, not a type property. By example, if there is an Object but the VM knows the only possible type is a B3 and the value is not null then the VM is free to emit several stores, because it's a B3, so

Re: [External] Foo / Foo.ref is a backward default; should be Foo.val / Foo

2022-04-25 Thread forax
> From: "Brian Goetz" > To: "Remi Forax" > Cc: "Dan Heidinga" , "Kevin Bourrillion" > , "valhalla-spec-experts" > > Sent: Monday, April 25, 2022 9:54:26 PM > Subject: Re: [External] Foo / Foo.ref is a backward default; sho

Re: [External] Foo / Foo.ref is a backward default; should be Foo.val / Foo

2022-04-25 Thread Remi Forax
> From: "Kevin Bourrillion" > To: "valhalla-spec-experts" > Sent: Monday, April 25, 2022 4:52:50 AM > Subject: [External] Foo / Foo.ref is a backward default; should be Foo.val / > Foo > Hi, > The current plan for `primitive class Foo` -- to call the value type `Foo` and > the reference type `

Re: [External] Foo / Foo.ref is a backward default; should be Foo.val / Foo

2022-04-25 Thread Remi Forax
> From: "Brian Goetz" > To: "Dan Heidinga" > Cc: "Kevin Bourrillion" , "valhalla-spec-experts" > > Sent: Monday, April 25, 2022 8:26:02 PM > Subject: Re: [External] Foo / Foo.ref is a backward default; should be > Foo.val / > Foo >>> What I’m thinking here about migration is that existing APIs

Re: [External] : Re: Objects vs. values, the continuation

2022-04-25 Thread forax
- Original Message - > From: "Brian Goetz" > To: "Remi Forax" > Cc: "Kevin Bourrillion" , "valhalla-spec-experts" > > Sent: Monday, April 25, 2022 1:57:28 AM > Subject: Re: [External] : Re: Objects vs. values, the continuation

Re: Objects vs. values, the continuation

2022-04-25 Thread forax
> From: "Kevin Bourrillion" > To: "Remi Forax" > Cc: "valhalla-spec-experts" > Sent: Monday, April 25, 2022 4:17:19 AM > Subject: Re: Objects vs. values, the continuation > On Sun, Apr 24, 2022 at 6:23 PM Remi Forax < [ mailto:fo...@uni

128bits value type and VarHande.compareAndSet() Was: Objects vs. values, the continuation

2022-04-25 Thread Remi Forax
> From: "Brian Goetz" > To: "Dan Heidinga" > Cc: "Kevin Bourrillion" , "valhalla-spec-experts" > > Sent: Monday, April 25, 2022 4:59:14 PM > Subject: Re: Objects vs. values, the continuation >>> The fact that these are "small" (at most 64 bits) is incidental, not >>> essential; >>> introducing

Re: Objects vs. values, the continuation

2022-04-24 Thread Remi Forax
> From: "Remi Forax" > To: "Kevin Bourrillion" > Cc: "valhalla-spec-experts" > Sent: Monday, April 25, 2022 12:23:32 AM > Subject: Re: Objects vs. values, the continuation >> From: "Kevin Bourrillion" >> To: "valhalla

Re: Objects vs. values, the continuation

2022-04-24 Thread Remi Forax
> From: "Brian Goetz" > To: "Kevin Bourrillion" > Cc: "valhalla-spec-experts" > Sent: Sunday, April 24, 2022 5:57:57 PM > Subject: Re: Objects vs. values, the continuation > Overall I find a lot to like about this presentation. I’m still a little iffy > about whether we can redefine the letters

Re: Objects vs. values, the continuation

2022-04-24 Thread Remi Forax
> From: "Kevin Bourrillion" > To: "valhalla-spec-experts" > Sent: Saturday, April 23, 2022 12:38:12 AM > Subject: Objects vs. values, the continuation > I'd like to remind everyone about this (self-important-sounding) document I > shared some months ago: [ > https://docs.google.com/document/d/1J

Re: Object as a concrete class

2022-04-01 Thread Remi Forax
- Original Message - > From: "Dan Heidinga" > To: "Brian Goetz" > Cc: "daniel smith" , "valhalla-spec-experts" > > Sent: Friday, April 1, 2022 3:50:20 PM > Subject: Re: Object as a concrete class > On Fri, Apr 1, 2022 at 9:29 AM Brian Goetz wrote: >> >> >> > assert new Object().hasIde

Re: Alternative to IdentityObject & ValueObject interfaces

2022-03-24 Thread Remi Forax
> From: "Brian Goetz" > To: "daniel smith" , "valhalla-spec-experts" > > Sent: Thursday, March 24, 2022 1:46:44 PM > Subject: Re: Alternative to IdentityObject & ValueObject interfaces > On 3/23/2022 10:51 PM, Dan Smith wrote: >>> On Mar 22, 2022, at 5:56 PM, Dan Smith < [ mailto:daniel.sm...@o

Re: Alternative to IdentityObject & ValueObject interfaces

2022-03-23 Thread Remi Forax
- Original Message - > From: "Maurizio Cimadamore" > To: "daniel smith" , "valhalla-spec-experts" > > Sent: Wednesday, March 23, 2022 11:23:26 AM > Subject: Re: Alternative to IdentityObject & ValueObject interfaces > On 22/03/2022 23:56, Dan Smith wrote: >> Other abstract classes and i

Re: Alternative to IdentityObject & ValueObject interfaces

2022-03-23 Thread Remi Forax
Hi Brian, i've maybe have twisted mind but i read your email as a rebuttal of both IdentityObject/ValueObject and identity/value modifiers. As you said, an identity object and a value object are less dis-similar now that they were in the past: a value class now reuse the method equals and has

Re: Evolving instance creation

2022-02-24 Thread Remi Forax
- Original Message - > From: "Dan Heidinga" > To: "daniel smith" > Cc: "valhalla-spec-experts" > Sent: Thursday, February 24, 2022 4:39:52 PM > Subject: Re: Evolving instance creation > Repeating what I said in the EG meeting: > > * "new" carries the mental model of allocating space.

Re: Abstract class with fields implementing ValueObject

2022-02-10 Thread Remi Forax
- Original Message - > From: "John Rose" > To: "Frederic Parain" > Cc: "valhalla-spec-experts" > Sent: Thursday, February 10, 2022 12:02:53 AM > Subject: Re: Abstract class with fields implementing ValueObject > That could be one of very many edge conditions in the JVMS that are not > d

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

2022-02-10 Thread Remi Forax
> From: "John Rose" > To: "daniel smith" > Cc: "valhalla-spec-experts" > Sent: Wednesday, February 9, 2022 7:32:07 PM > Subject: Re: EG meeting, 2022-02-09 [SoV-3: constructor questions] > On 8 Feb 2022, at 19:04, Dan Smith wrote: >> "SoV-3: constructor questions": Dan asked about validation f

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: VM model and aconst_init

2022-01-31 Thread forax
> From: "Brian Goetz" > To: "daniel smith" , "John Rose" > > Cc: "Remi Forax" , "valhalla-spec-experts" > > Sent: Saturday, January 29, 2022 6:40:13 PM > Subject: Re: VM model and aconst_init > I think we're kind of

Re: [External] : Re: VM model and aconst_init

2022-01-31 Thread forax
> From: "John Rose" > To: "Remi Forax" > Cc: "valhalla-spec-experts" > Sent: Thursday, January 27, 2022 10:00:20 PM > Subject: Re: [External] : Re: VM model and aconst_init > On 25 Jan 2022, at 2:50, [ mailto:fo...@univ-mlv.fr | fo...@univ-mlv.

Re: SoV-3: constructor questions

2022-01-27 Thread forax
- Original Message - > From: "Dan Heidinga" > To: "Remi Forax" > Cc: "daniel smith" , "valhalla-spec-experts" > > Sent: Thursday, January 27, 2022 4:41:14 PM > Subject: Re: SoV-3: constructor questions >> >> The rea

Re: SoV-3: constructor questions

2022-01-27 Thread Remi Forax
- Original Message - > From: "Dan Heidinga" > To: "daniel smith" > Cc: "valhalla-spec-experts" > Sent: Thursday, January 27, 2022 4:09:58 PM > Subject: Re: SoV-3: constructor questions > (Resending as I forgot to CC the list - Sorry for the duplicate email Dan) > >> We can come up with

Re: The interfaces IdentityObject and ValueObject must die !

2022-01-26 Thread forax
> From: "John Rose" > To: "daniel smith" > Cc: "Remi Forax" , "valhalla-spec-experts" > > Sent: Thursday, January 27, 2022 2:18:03 AM > Subject: Re: The interfaces IdentityObject and ValueObject must die ! > On 26 Jan 2022, at

Re: The interfaces IdentityObject and ValueObject must die !

2022-01-26 Thread forax
> From: "daniel smith" > To: "Remi Forax" > Cc: "valhalla-spec-experts" > Sent: Wednesday, January 26, 2022 4:42:30 PM > Subject: Re: The interfaces IdentityObject and ValueObject must die ! >> On Jan 26, 2022, at 2:18 AM, [ mailto:fo...@

Re: The interfaces IdentityObject and ValueObject must die !

2022-01-26 Thread forax
- Original Message - > From: "daniel smith" > To: "Remi Forax" > Cc: "valhalla-spec-experts" > Sent: Wednesday, January 26, 2022 6:20:07 AM > Subject: Re: The interfaces IdentityObject and ValueObject must die ! >> On Jan 25, 202

The interfaces IdentityObject and ValueObject must die !

2022-01-25 Thread Remi Forax
I think we should revisit the idea of having the interfaces IdentityObject/ValueObject. They serve two purposes 1/ documentation: explain the difference between an identity class and a value class 2/ type restriction: can be used as type or bound of type parameter for algorithms that only wor

Re: VM model and aconst_init

2022-01-25 Thread forax
> From: "Brian Goetz" > To: "Dan Heidinga" > Cc: "Remi Forax" , "John Rose" , > "valhalla-spec-experts" > Sent: Tuesday, January 25, 2022 3:57:17 PM > Subject: Re: VM model and aconst_init > The motivation for this co

Re: VM model and aconst_init

2022-01-25 Thread forax
> From: "John Rose" > To: "Remi Forax" > Cc: "valhalla-spec-experts" > Sent: Wednesday, January 19, 2022 9:40:15 AM > Subject: Re: VM model and aconst_init > I think (based on our most recent conversations) > that aconst_init can return a Q-

Re: [External] : Re: VM model and aconst_init

2022-01-12 Thread forax
> From: "Brian Goetz" > To: "Remi Forax" > Cc: "valhalla-spec-experts" > Sent: Wednesday, January 12, 2022 2:30:00 PM > Subject: Re: [External] : Re: VM model and aconst_init > The operand of C_Class is a weird beast. It can be an internal name &

Re: VM model and aconst_init

2022-01-12 Thread forax
> From: "Brian Goetz" > To: "Remi Forax" , "valhalla-spec-experts" > > Sent: Wednesday, January 12, 2022 1:45:34 PM > Subject: Re: VM model and aconst_init > Both value and primitive classes use the aconst_init / withfield > initializatio

Re: L-type, Q-type and class mirrors

2022-01-12 Thread forax
- Original Message - > From: "Brian Goetz" > To: "Remi Forax" , "valhalla-spec-experts" > > Sent: Wednesday, January 12, 2022 1:27:07 PM > Subject: Re: L-type, Q-type and class mirrors >> Let's take a detour, and try to answer t

VM model and aconst_init

2022-01-12 Thread Remi Forax
I've some troubles to wrap my head around those two sentences """ aconst_init is the analogue of new for value objects; it leaves a reference to the initial value for a value class on the stack. This initial value is guaranteed to not be equal to null. The sole operand of this bytecode is a ref

L-type, Q-type and class mirrors

2022-01-12 Thread Remi Forax
Hi all, i want to propose a way to reconcile builtin primitive types and primitive classes in the B1/B2/B3 world. Let's take a detour, and try to answer to the question, how do we do reflection on method with Q-types ? Given that reflection is using the class java.lang.Class, it means that we ne

Re: Why do we need .ref class for primtive class ?

2022-01-06 Thread forax
oxing, but using checkcast to convert from a QComplex; to a LComplex; One reason may be that this is not a subtyping relationship but a boxing relationship so it may not work when well we will have fully reified generics. Rémi > From: "Brian Goetz" > To: "Remi Forax

Re: Why do we need .ref class for primtive class ?

2022-01-06 Thread Remi Forax
- Original Message - > From: "Remi Forax" > To: "valhalla-spec-experts" > Sent: Thursday, January 6, 2022 7:50:54 PM > Subject: Why do we need .ref class for primtive class ? > It just occurs to me that while ACC_VALUE is a bit that change the runt

Why do we need .ref class for primtive class ?

2022-01-06 Thread Remi Forax
It just occurs to me that while ACC_VALUE is a bit that change the runtime semantics, something the VM should take care of, ACC_PRIMITIVE is not a bit that change the runtime semantics, only the javac translation strategy, javac emits Q-types instead of L-type + the Preload attribute. If value cl

Re: Updated State of Valhalla documents

2022-01-06 Thread forax
- Original Message - > From: "John Rose" > To: "daniel smith" > Cc: "Remi Forax" , "valhalla-spec-experts" > > Sent: Thursday, January 6, 2022 4:53:28 AM > Subject: Re: Updated State of Valhalla documents >> On Jan 5, 202

Re: Updated State of Valhalla documents

2022-01-05 Thread forax
- Original Message - > From: "daniel smith" > To: "Remi Forax" > Cc: "valhalla-spec-experts" > Sent: Thursday, January 6, 2022 12:37:09 AM > Subject: Re: Updated State of Valhalla documents >> On Dec 23, 2021, at 12:58 PM, fo...@un

Re: [External] : Re: Updated State of Valhalla documents

2021-12-23 Thread forax
> From: "John Rose" > To: "Remi Forax" > Cc: "Brian Goetz" , "valhalla-spec-experts" > > Sent: Thursday, December 23, 2021 8:43:22 PM > Subject: Re: [External] : Re: Updated State of Valhalla documents > On 23 Dec 2021, at 11

Re: Updated State of Valhalla documents

2021-12-23 Thread forax
> From: "John Rose" > To: "Remi Forax" > Cc: "Brian Goetz" , "valhalla-spec-experts" > > Sent: Thursday, December 23, 2021 7:51:14 PM > Subject: Re: Updated State of Valhalla documents >> On Dec 23, 2021, at 10:35 AM, Remi Forax

Re: Updated State of Valhalla documents

2021-12-23 Thread Remi Forax
> From: "Brian Goetz" > To: "valhalla-spec-experts" > Sent: Thursday, December 23, 2021 6:14:43 PM > Subject: Updated State of Valhalla documents > Just in time for Christmas, the latest State of Valhalla is available! > [ > https://openjdk.java.net/projects/valhalla/design-notes/state-of-valha

Re: [External] : Re: Do we even need IO/VO interfaces? (was: JEP update: Value Objects)

2021-12-20 Thread forax
> From: "Brian Goetz" > To: "Remi Forax" > Cc: "daniel smith" , "Dan Heidinga" > , "John Rose" , > "valhalla-spec-experts" > Sent: Mardi 21 Décembre 2021 01:07:15 > Subject: Re: [External] : Re: Do we even need IO/

Re: Do we even need IO/VO interfaces? (was: JEP update: Value Objects)

2021-12-20 Thread forax
> From: "Brian Goetz" > To: "Remi Forax" > Cc: "daniel smith" , "Dan Heidinga" > , "John Rose" , > "valhalla-spec-experts" > Sent: Lundi 20 Décembre 2021 20:26:01 > Subject: Do we even need IO/VO interfaces? (wa

Re: JEP update: Value Objects

2021-12-20 Thread Remi Forax
Brian, the last time we talked about IdentityObject and ValueObject, you said that you were aware that introducing those interfaces will break some existing codes, but you wanted to know if it was a lot of codes or not. So i do not understand now why you want to mix IdentityObject/ValueObject

Re: We have to talk about "primitive".

2021-12-18 Thread Remi Forax
> From: "Kevin Bourrillion" > To: "valhalla-spec-experts" > Sent: Mercredi 15 Décembre 2021 19:42:55 > Subject: We have to talk about "primitive". > (Okay, so we're doing this) > I think the rename to "primitive classes" happened during my outage last year. > When I came back I made the decision

Re: [External] : Re: Proposal: Static/final constructors for bucket-3 primitive classes.

2021-12-09 Thread forax
- Original Message - > From: "John Rose" > To: "Remi Forax" > Cc: "Brian Goetz" , "valhalla-spec-experts" > , "clement > cherlin" > Sent: Thursday, December 9, 2021 9:45:11 AM > Subject: Re: [External] : Re: Propo

Re: Proposal: Static/final constructors for bucket-3 primitive classes.

2021-12-08 Thread Remi Forax
> From: "John Rose" > To: "Brian Goetz" > Cc: "valhalla-spec-experts" , "clement > cherlin" > Sent: Thursday, December 9, 2021 5:30:50 AM > Subject: Re: Proposal: Static/final constructors for bucket-3 primitive > classes. > We have considered, at various points in the last six years or more,

Re: [External] : Re: JEP update: Value Objects

2021-12-01 Thread Remi Forax
> From: "John Rose" > To: "daniel smith" > Cc: "Dan Heidinga" , "valhalla-spec-experts" > > Sent: Jeudi 2 Décembre 2021 00:56:02 > Subject: Re: [External] : Re: JEP update: Value Objects > On Dec 1, 2021, at 3:29 PM, Dan Smith < [ mailto:daniel.sm...@oracle.com | > daniel.sm...@oracle.com ] > w

Re: JEP update: Value Objects

2021-12-01 Thread Remi Forax
Hi Daniel, this is really nice. Here are my remarks. "It generally requires that an object's data be located at a fixed memory location" remove "fixed", all OpenJDK GCs move objects. Again later, remove "fixed" in "That is, a value object does not have a fixed memory address ...". At the begin

Re: [External] : Re: EG meeting, 2021-11-17

2021-11-19 Thread forax
> From: "Brian Goetz" > To: "Dan Heidinga" > Cc: "Remi Forax" , "Kevin Bourrillion" , > "daniel smith" , "valhalla-spec-experts" > > Sent: Vendredi 19 Novembre 2021 14:32:38 > Subject: Re: [External] : Re: EG mee

Re: EG meeting, 2021-11-17

2021-11-18 Thread Remi Forax
> From: "Brian Goetz" > To: "Kevin Bourrillion" > Cc: "Dan Heidinga" , "daniel smith" > , "valhalla-spec-experts" > > Sent: Jeudi 18 Novembre 2021 23:34:51 > Subject: Re: EG meeting, 2021-11-17 > I think it is reasonable to consider allowing bucket two classes to be > abstract. > They could be

Re: [External] : Re: Consolidating the user model

2021-11-04 Thread Remi Forax
> From: "John Rose" > To: "daniel smith" > Cc: "Kevin Bourrillion" , "Brian Goetz" > , "valhalla-spec-experts" > > Sent: Jeudi 4 Novembre 2021 02:34:52 > Subject: Re: [External] : Re: Consolidating the user model > On Nov 3, 2021, at 4:05 PM, Dan Smith < [ mailto:daniel.sm...@oracle.com | > dan

Re: identityless objects and the type hierarchy

2021-11-04 Thread Remi Forax
> From: "Kevin Bourrillion" > To: "Brian Goetz" > Cc: "valhalla-spec-experts" > Sent: Jeudi 4 Novembre 2021 22:34:54 > Subject: Re: identityless objects and the type hierarchy > On Wed, Nov 3, 2021 at 12:43 PM Brian Goetz < [ mailto:brian.go...@oracle.com > | > brian.go...@oracle.com ] > wrote

Re: Consolidating the user model

2021-11-03 Thread Remi Forax
I really like this, it's far better than how i was seeing Valhalla, pushing .ref into a corner is a good move. I still hope that moving from B1 to B2 can be almost backward compatible, if no direct access to the constructor, no synchronized and reasonable uses of ==. My only concern now is th

Re: EG meeting *canceled*, 2021-10-20

2021-10-20 Thread Remi Forax
I've sent a mail about considering all primitive types as always nullable on stack (as parameters or local variables). Rémi - Original Message - > From: "daniel smith" > To: "valhalla-spec-experts" > Sent: Mercredi 20 Octobre 2021 16:03:12 > Subject: EG meeting *canceled*, 2021-10-20

Re: Addressing the full range of use cases

2021-10-06 Thread Remi Forax
On October 6, 2021 10:07:09 AM UTC, Maurizio Cimadamore wrote: > >On 06/10/2021 10:56, Remi Forax wrote: >>> - Existing class types like LocalDate are both nullable and atomic. These >>> are >>> useful properties to preserve during migration; nullability, in

Re: EG meeting, 2021-10-06

2021-10-06 Thread Remi Forax
Sadly, i will not be able to attend this meeting :( regards, Rémi - Original Message - > From: "daniel smith" > To: "valhalla-spec-experts" > Sent: Mercredi 6 Octobre 2021 00:52:20 > Subject: EG meeting, 2021-10-06 > EG Zoom meeting tomorrow, Wednesday October 6, at 4pm UTC (9am PDT, 1

Re: Addressing the full range of use cases

2021-10-06 Thread Remi Forax
- Original Message - > From: "daniel smith" > To: "valhalla-spec-experts" > Sent: Mardi 5 Octobre 2021 01:34:37 > Subject: Addressing the full range of use cases > When we talk about use cases for Valhalla, we've often considered a very broad > set of class abstractions that represent im

Re: Factory methods & the language model

2021-09-14 Thread Remi Forax
- Original Message - > From: "Brian Goetz" > To: "daniel smith" , "Dan Heidinga" > > Cc: "valhalla-spec-experts" > Sent: Vendredi 10 Septembre 2021 20:25:50 > Subject: Re: Factory methods & the language model >> I'm not particularly interested in settling on a bikeshed color, but am >>

Re: Factory methods & the language model

2021-09-14 Thread Remi Forax
I will take the scenic road to answer :) There is currently an issue with the fact that we present primitive class as constructor in Java the language but is translated not to a constructor in the class file. This introduce a false sense of compatibility, the code is identical if it's a classic

Re: Objects.newIdentity update

2021-07-19 Thread Remi Forax
- Original Message - > From: "daniel smith" > To: "valhalla-spec-experts" > Cc: "Roger Riggs" > Sent: Lundi 19 Juillet 2021 19:59:03 > Subject: Objects.newIdentity update [I've added Mark in CC] > An update on Objects.newIdentity for Java 17: Roger did some work to put the > feature to

Re: JEP 401 -- reflection and class literals

2021-06-29 Thread Remi Forax
> From: "Brian Goetz" > To: "valhalla-spec-experts" > Sent: Mardi 29 Juin 2021 18:48:25 > Subject: Re: JEP 401 -- reflection and class literals > The general consensus here is that this stacking is slightly better than the > previous one, so let's take this as the plan of record. Now, to explore

Re: [External] : Re: JEP 401 -- reflection and class literals

2021-06-27 Thread Remi Forax
- Original Message - > From: "Brian Goetz" > To: "Peter Levart" > Cc: "valhalla-spec-experts" > Sent: Dimanche 27 Juin 2021 22:01:21 > Subject: Re: [External] : Re: JEP 401 -- reflection and class literals >> >> >> Seems like we are forced to re-use Class objects to hold this >> additio

Re: JEP 401 -- reflection and class literals

2021-06-27 Thread Remi Forax
> From: "Brian Goetz" > To: "valhalla-spec-experts" > Sent: Mercredi 23 Juin 2021 17:13:27 > Subject: JEP 401 -- reflection and class literals > In working through the details of reflective support in JEP 401, I think we've > fallen into a slight "false consistency" regarding class literals. (Th

Re: Making Object abstract

2021-06-17 Thread Remi Forax
- Mail original - > De: "John Rose" > À: "Brian Goetz" > Cc: "daniel smith" , "valhalla-spec-experts" > > Envoyé: Mercredi 16 Juin 2021 23:50:35 > Objet: Re: Making Object abstract > On Jun 2, 2021, at 7:57 AM, Brian Goetz wrote: >> >> A minor bikeshed comment: We're asking users to

Re: JEP draft: Better-defined JVM class file validation

2021-06-06 Thread Remi Forax
- Mail original - > De: "daniel smith" > À: "valhalla-spec-experts" > Envoyé: Vendredi 4 Juin 2021 19:11:11 > Objet: Re: JEP draft: Better-defined JVM class file validation >> On Jun 4, 2021, at 10:41 AM, Dan Smith wrote: >> >> Posted a new JEP draft, here: >> >> http://openjdk.java.n

Re: [External] : Re: Making Object abstract

2021-06-05 Thread Remi Forax
> De: "Brian Goetz" > À: "Dan Heidinga" > Cc: "daniel smith" , "valhalla-spec-experts" > > Envoyé: Samedi 5 Juin 2021 17:21:11 > Objet: Re: [External] : Re: Making Object abstract > Rampdown is next week; time is fleeting. > I think the path of adding Objects::newIdentity in 17 seems the best

Re: Make new Object() backward compatible

2021-05-09 Thread forax
- Mail original - > De: "Brian Goetz" > À: "Remi Forax" , "valhalla-spec-experts" > > Envoyé: Dimanche 9 Mai 2021 17:04:31 > Objet: Re: Make new Object() backward compatible >> The logical conclusion is that java.lang.Object is a param

Make new Object() backward compatible

2021-05-09 Thread Remi Forax
I think there is a way to avoid all the issues we have with new Object(). The problem: We want to inject the interface IdentityObject on all classes that are neither a "no field" abstract class nor a primtive class. But java.lang.Object acts as a "no field" abstract class but it's not an abs

Re: Meeting today: IdentityClass

2021-05-05 Thread forax
> De: "Brian Goetz" > À: "Remi Forax" , "valhalla-spec-experts" > > Envoyé: Mercredi 5 Mai 2021 20:20:07 > Objet: Re: Meeting today: IdentityClass > Here are some idioms I can imagine a use for with IdentityObject: > // parameter type &g

Re: Meeting today: IdentityObject

2021-05-05 Thread Remi Forax
java.lang.Object; Rémi - Mail original - > De: "Remi Forax" > À: "valhalla-spec-experts" > Envoyé: Mercredi 5 Mai 2021 16:39:01 > Objet: Meeting today: IdentityClass > If it's possible, i would like to discuss about IdentityClass again. > > As

Re: EG meeting, 2021-05-05

2021-05-05 Thread Remi Forax
- Mail original - > De: "daniel smith" > À: "valhalla-spec-experts" > Envoyé: Mercredi 5 Mai 2021 16:23:08 > Objet: EG meeting, 2021-05-05 > The next EG Zoom meeting is today at 4pm UTC (9am PDT, 12pm EDT). > > Topics to discuss: > > "consolidated VM notes for primitive classes": Updat

Meeting today: IdentityClass

2021-05-05 Thread Remi Forax
If it's possible, i would like to discuss about IdentityClass again. As noted in the last draft, adding IdentityClass automatically at runtime is not a compatible change if tests that uses Class::getInterfaces() are not written correctly, and sadly, a lot of tests are written that way. I'm guilt

Re: Parametric VM class file format

2021-04-21 Thread forax
- Mail original - > De: "John Rose" > À: "Remi Forax" > Cc: "valhalla-spec-experts" > Envoyé: Mercredi 21 Avril 2021 08:43:34 > Objet: Re: Parametric VM class file format > On Apr 20, 2021, at 9:40 AM, Remi Forax wrote: >> &

Parametric VM class file format

2021-04-20 Thread Remi Forax
Hi all, at least as an exercise to understand the proposed class file format for the parametric VM, i will update ASM soon (in a branch) to see how things work. As usual with ASM, there is the question of sharing the same index in the constant pool, i.e. should two anchors (SpecializationAnchor)

parametric-vm and stacktrace

2021-03-12 Thread Remi Forax
I wonder if the ParameterBinding should not have kind of name or at least a textual representation so you can see them in stacktraces, it will be really helpful for debugging. Rémi

parametric-vm / section other upcalls

2021-03-10 Thread Remi Forax
In the sub-section "other upcalls", for type-testing, the VM does an upcall to the method "isAssignableFrom" of the Species but it's not clear for me how a user can creates such "Species" given that it seems that the way to configure a species is to return a ParameterBinding properly configured.

Parametric-vm spec / unused CONSTANT_Parameter is illegal

2021-03-10 Thread Remi Forax
Hi all, slowly reading the Parametric-vm spec. With my ASM hat, "As a structural constraint, it is illegal for a CONSTANT_Parameter constant to be unused." This is different of all other CONSTANTs and doesn't work well with the idea that you can patch a classfile by copying the existing constan

Re: EG meeting, 2021-03-10

2021-03-10 Thread Remi Forax
cool ! Rémi - Mail original - > De: "daniel smith" > À: "valhalla-spec-experts" > Envoyé: Mercredi 10 Mars 2021 17:12:46 > Objet: EG meeting, 2021-03-10 > The next EG Zoom meeting is today at 5pm UTC (9am PST, 12pm EST). > > No new email threads, but John would like to spend some time

Re: Inline Record vs JLS / Reflection

2020-12-16 Thread forax
> De: "John Rose" > À: "daniel smith" > Cc: "Remi Forax" , "valhalla-spec-experts" > > Envoyé: Mercredi 16 Décembre 2020 20:09:44 > Objet: Re: Inline Record vs JLS / Reflection > On Dec 16, 2020, at 11:07 AM, Dan Smith < [ mail

  1   2   3   4   >