Mark S. Miller (2014-03-31T21:47:12.000Z)
domenic at domenicdenicola.com (2014-04-11T22:43:55.441Z)
Yes. This cure is worse than the disease. Object.freeze is important for defensiveness for at least the reasons you state. The problem isn't just new assignments like a.field = .... It is also old assignments like ```js function Point(....) {....} Point.prototype.toString = function() {....}; // fails ``` Unless the committee revisits the override mistake, which seems unlikely, the only way to cope that I know of is to use tamperProof(obj) where you would have used freeze(obj). Not fixing the override mistake was our biggest mistake in ES5. My apologies for not raising the alarm until late, and not making the case forcefully enough before it was too late. This is my single biggest regret of all the time I've spent