This is basically what I was proposing, ironically enough. There's a
few small differences, but the only one that substantially varied from
mine I filed an issue in your repo against. (I almost went for
`value`.)
BTW, yours looks a *lot* like OCaml's `ref 'a` type, which is just
sugar for `{mutable contents : 'a}`. The only difference is that OCaml
doesn't allow you to take a reference to a mutable property, while
yours does.
-----
Isiah Meadows
[email protected]
Looking for web consulting? Or a new website?
Send me an email and we can get started.
www.isiahmeadows.com
On Mon, Mar 19, 2018 at 7:57 PM, Ron Buckton <[email protected]> wrote:
>> -----Original Message-----
>> From: es-discuss <[email protected]> On Behalf Of Isiah
>> Meadows
>> Sent: Monday, March 19, 2018 3:21 PM
>> To: Michael J. Ryan <[email protected]>
>> Cc: es-discuss <[email protected]>
>> Subject: Re: Pointers
>>
>> And even if we *could* get pointers into JS, I'd *strongly* not want it to be
>> like what's proposed here. Instead, I'd prefer an object encapsulating a
>> reference to a variable, something like this (although engines could avoid
>> the
>> ceremony of closures here):
>>
>> ```js
>> let foo = 1;
>>
>> func(ref foo, bar)
>> // Equivalent to:
>> func({deref: () => foo, set: v => foo = v}, bar)
>>
>> function func(ref foo, bar) {
>> foo += 2
>> }
>>
>> // Equivalent to:
>> function func(foo) {
>> foo.set(foo.deref() + 2)
>> }
>> ```
>
> I put together a strawman for this last year at
> https://github.com/rbuckton/proposal-refs, but I haven't had much time to
> work on it.
>
> Ron
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss