GeneratorFunctionPrototype should probably be a function

Andy Wingo wingo at igalia.com
Tue Aug 13 09:02:06 PDT 2013


Hi,

Section 15.19.3.3 of the July 15 draft says:

    Properties of the GeneratorFunction Prototype Object

    The GeneratorFunction prototype object is an ordinary object. It is
    not a function object and does not have a [[Code]] internal data
    property or any other of the internal data properties listed in
    Table 13. In addition to being the value of the prototype property
    of the %GeneratorFunction% intrinsic and is itself the %Generator%
    instrinsic.

See http://people.mozilla.org/~jorendorff/es6-draft.html#sec-15.19.3 for
the gnarlies.  To be explicit, we are talking about this object:

  var GeneratorFunctionPrototype = function*(){}.__proto__;

I think this object should be a function and not a normal object.

  1. The spec doesn't specify any other objects for which "x instanceof
     Function" that aren't functions.

  2. Function.prototype.toString is the binding for ".toString()" on
     this object, but it is only applicable to function receivers.

Sending here as I seem to have forgotten my bugzilla password, and the
mail is taking too long to get here.  Sorry 'bout that.

Regards,

Andy.


More information about the es-discuss mailing list