P.S. sorry for the double post but should mention the word "convenient" came from nowhere (except autocorrect) in my last message. I wasn't calling your example "inconvenient." :)
Le mar. 10 juill. 2018 01 h 26, Ben Wiley <[email protected]> a écrit : > Oops, meant to send to the rest of the list. > > Thanks for the feedback Isiah. > 1. Fair! > 2. Could you elaborate? I believe that's what this is, though I might be > missing your point. > 3. a. As I noted on GitHub I also considered that syntax originally. I'm > torn on it because allowing out-of-order index definitions in an array > little seems a bit wacky, but maybe it's not so bad? > b. Hmm, this sounds interesting but I'm not sure I totally follow. Could > you give a more convenient concrete example of the array pattern type for > the example you're discussing? > > Ben > > > Le mar. 10 juill. 2018 00 h 15, Isiah Meadows <[email protected]> a > écrit : > >> I like the idea, but there's a few tweaks I think could be made: >> >> 1. `replace` reads like you're doing a string or subarray replace. >> This proposal sounds more like an `update`. >> 2. If you allow it to carry the semantics of `slice()` + `array[index] >> = value`, engines can implement it a bit quicker. >> 3. IMHO, this belongs as syntax, either in addition or in place of >> this proposal's method. If nothing else, it's for consistency with >> object spread, but it also allows you to spread iterables similarly, >> something like `[...iter, index: value]`. We could also introduce that >> as an array pattern type, so we don't need to use elisions so >> frequently to skip values in array destructuring patterns (think: >> `regexp.exec(string)` results, when you don't care about all the >> groups). There's been times where I've had upwards of 3-4 elisions all >> clustered together, and that gets unreadable in a hurry. >> >> ----- >> >> Isiah Meadows >> [email protected] >> www.isiahmeadows.com >> >> >> On Mon, Jul 9, 2018 at 11:42 PM, Ben Wiley <[email protected]> >> wrote: >> > Hi ECMAScript folks, >> > >> > I'm brand new to this process and I've drafted a proposal (and >> polyfill) for >> > a new Array.prototype.replace method. In the vein of Array concat, >> String >> > replace and the new Object rest spread, Array replace provides a way to >> > shallow clone an array and replace an element in a single statement. >> > >> > Here's the GitHub repo, which outlines API, motivation, use cases, >> > alternatives, and polyfill usage: >> > https://github.com/benwiley4000/array-replace >> > >> > Array replace shouldn't be considered an across-the-board substitute for >> > Array.prototype.splice (which mutates the array) and wouldn't be ideal >> for >> > performance critical applications handling very large arrays. It is well >> > suited for application logic where immutability is desired - a trend >> growing >> > in the Javascript community. >> > >> > Most of the application areas of object rest spread composition syntax >> (for >> > building objects, not destructuring them) are also application areas for >> > Array.prototype.replace, when your object happens to be an array. >> > >> > I'm looking forward to any feedback and I'd also love for a champion to >> step >> > in and help, if you think this is an ok idea. >> > >> > Thanks! >> > Ben >> > >> > _______________________________________________ >> > 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

