This is easily done in userland, is there a strong justification for new syntax for it?
Quick example (https://jsfiddle.net/Ljm9gcmo/): ```js // Accessor const entryAccessor = (array, index) => { return { get value() { return array[index]; }, set value(x) { array[index] = x; } } }; // Example usage const a = ["a", "b", "c"]; const e = entryAccessor(a, 0); console.log(e.value); // "a" e.value = "A"; console.log(e.value); // "A" ``` If you wanted and don't object to modifying built-in prototypes, you could even put something on `Array.prototype` for it (non-enumerable, of course). -- T.J. Crowder On Fri, Jun 2, 2017 at 5:06 PM, Alex Falcon <[email protected]> wrote: > Hello. I heard about SIMD, Atomics, etc. and they accept as first > arguments "array, index", so because ES6 have spreads, I suggest to make > next things: > > let array = [0, 2, 3]; > let ptr = array{0}; // don't get value, but pair of [array, 0], also this > is proxied which you have setter and getter "value" > let ptr = array.ptr(0); // alternate, functional > > ptr.value = 1; // setter > let acceptance = ptr.value; // getter > > // also you can just use these pointers without extra indexing > let idx = Atomics.add(...ptr, 1); > > It should available for both: typed and regular arrays. > > > _______________________________________________ > 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

