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

Reply via email to