Re: Evolving instance creation

2022-03-01 Thread Dan Smith
On Mar 1, 2022, at 6:56 AM, Kevin Bourrillion mailto:kev...@google.com>> wrote: The main thing I think CICEs/`new` accomplish is simply to "cross the bridge". Constructors are void and non-static; yet somehow we need to call them as if they're static and non-void! `new` gets us across that gap.

Re: Evolving instance creation

2022-03-01 Thread Kevin Bourrillion
Seems like this decision is trending in the direction I'd prefer already, but here's some argumentation that *might* be helpful from the programming-model perspective. On Tue, Feb 22, 2022 at 1:17 PM Dan Smith wrote: One of the longstanding properties of class instance creation expressions > ('

Re: Evolving instance creation

2022-02-24 Thread Brian Goetz
I find DanH's way of presenting it more natural (and makes perfect sense now that its been said that way): it *is* allocating something, just not in the heap.  It is requesting new storage for a new object, which might be in the heap, or the stack, or registers. And we might find that new objec

Re: Evolving instance creation

2022-02-24 Thread Dan Smith
> On Feb 24, 2022, at 8:47 AM, Remi Forax wrote: > > - 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

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: > >

Re: Evolving instance creation

2022-02-24 Thread Dan Heidinga
Repeating what I said in the EG meeting: * "new" carries the mental model of allocating space. For identity objects, that's on the heap. For values, that may just be stack space / registers. But it indicates that some kind of allocation / demand for new storage has occurred. * It's important t