> The purpose of this library is to prevent TC39 from adding Array.prototype.smoosh and Array.prototype.smooshMap as replacement names for Array.prototype.flatten and Array.prototype.flatMap. They usually don't listen to popular votes, but they do listen to the Web and usages of JavaScript in the wild. So here's your chance to vote with your code in production. Put this library in your production large-scale website (it's very tiny! won't hurt) and we'll have a compelling case for TC39 not to break backwards compatibility.<p>Why do I not want TC39 to use smoosh or smooshMap?
Cool, go back and tell the library authors to stop putting bullshit on native objects, or get them to put namespace prefixes when they do. Don’t blame TC39 for doing their jobs: not breaking existing content.<p>Blame the authors of the frameworks that force js into a terrible corner
If you do this they will just use some other ridiculous name like 'squash'. Instead you need to check for the presence of any other TC39 feature and then if any are present, break if flatten isn't present.