Brendan Eich (2013-08-09T22:40:00.000Z)
domenic at domenicdenicola.com (2013-08-19T04:56:28.654Z)
On Aug 9, 2013, at 3:32 PM, Rick Waldron <waldron.rick at gmail.com> wrote: > While I agree this is interesting and should be explored further, I reject the proposal to add more meaning to the "!" character. Given this proposal, "!" would sometimes mean "not" or "negate" (as in it's current form) and sometimes mean "a required thing". Meanwhile, "refute" is a synonym for "negate", which is the opposite of what you're claiming the semantics would be, ie. irrefutable, "impossible to omit" No. > or "impossible to deny [a value for this identifier binding]". No, refutable is what Axel means. He wants matching, so a failure or refutation to cause fall through to next match. What we have in JS now with o.p and in ES6 with let {p} = o; is irrefutable -- no way to mismatch, if the property is missing you get undefined. So ! Is not too far off the mark. Recall that the late proposal was to unify patterns used now in destructuring and later in matching by requiring ? for irrefutability and making lack of ? mean "refutable".