Ahh parameters by reference yes have wished for that... ref is C#-ism to me... which also maybe 'out' which really isn't different in JS.... in C# it enforces that the value is set in the function receiving an out 'must give value to parameter'.
On Mon, Mar 19, 2018 at 5:28 PM, Isiah Meadows <[email protected]> wrote: > 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 >
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

