On Fri, Jul 19, 2013 at 1:35 PM, Tab Atkins Jr. <[email protected]>wrote:
> On Thu, Jul 18, 2013 at 4:34 PM, Andy Earnshaw <[email protected]> > wrote: > > It's potentially a breaking change, because > > > > 0 < 1 < 1 > > > > evaluates to false in current implementations because > > > > (0 < 1) < 1 > > Luckily, this is false in the chained operations too, since "(0 < 1) > && (1 < 1)" evaluates to false. > > One problem is that in current Javascript, the equality and the > comparison operators are at different precedence levels. Python puts > them at the same level, so that chaining can be purely left-to-right. > There's a decent chance that code does indeed depend on this, due to > testing equality of a comparison with a bool (which is stupid, but > people do it). > While this is all true, the simple answer is: var a = 1, b = 2, c = 3; a < b < c; // true is already valid JavaScript and can't be co-opted to express new runtime evaluation semantics. Rick
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

