On Tue, Oct 4, 2011 at 12:59 PM, Bob Nystrom <rnyst...@google.com> wrote:

>
> A constructor is different from a regular function. Instead of returning
> the value that the body of the function returns, it returns a special
> newly-created object.
>

Sorry, already you lost me ;-)  I guess you mean the operand of "new"? If
so, then the different thing is the operator 'new'. It's "new" that makes
the operand a constructor.



> Likewise, a generator is a special function that doesn't return what the
> body returns.
>

But it does not look special. There is nothing similar to 'new' involved in
the invocation of the generator.


> Instead, it returns an object that lets you interrupt and resume that
> function. This object exposes a next() method. When you call that, the
> function runs until it hits a yield. When it does, the function is paused
> at that point, and the result of the yield is returned from next(). The
> next time you call next() it picks up from there and continues.
>

and the state of the generator is hidden from the developer as far as I can
tell.

I think generators are an excellent example of a feature that is well
prototyped (in FF JS 1.7+). I think the developer uptake is minimal, outside
of the original advocates. I don't hear any clamor for other browsers to
implement this feature. If generators never go further, that is an awesome
outcome and we owe Dave Herman and other proponents of generators a lot of
thanks for their efforts.  Either way, "class" deserves at least as much
investigation.

jjb
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to