Rick Waldron (2015-01-02T23:26:35.000Z)
d at domenic.me (2015-01-12T17:51:50.183Z)
Kyle Simpson brought this up on Twitter today and I think it deserves one last look. Here's an example of the issue: ```js var sym = Symbol("description"); sym + ""; // Throws ``` Meanwhile... ```js var sym = Symbol("description"); String(sym); // "Symbol(description)" * ``` (* appears to be the convention that implementors have converged on) This is the only time that a "thing" in JavaScript throws when it encounters an implicit coercion operation. This detail appears to be problematic in that it's an unnecessary divergence from the language's normal behaviour. Ref: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-addition-operator-plus-runtime-semantics-evaluation 11.a