Mark S. Miller (2015-02-14T21:05:25.000Z)
dignifiedquire at gmail.com (2015-02-17T19:56:08.948Z)
No, the problem is that ```js class C extends X { ``` when X turns out to be null must be an error along exactly these lines. Everywhere else in the language where X is accepted as an expression evaluated to a value, if X evaluates to null, this is the same thing as placing null in that position. Consider: ```js const NULL = null; // C nostalgia class C extends NULL { ``` It would be awful for this to be different than ```js class C extends null { ``` If you really want to write a class whose `prototype.__proto__` is null, imperatively make it so after the class declaration. We don't need to compromise the consistency of the language to make this rare case less ugly.