Brendan Eich (2013-09-06T17:22:20.000Z)
> Allen Wirfs-Brock <mailto:allen at wirfs-brock.com>
> September 6, 2013 10:02 AM
>
> And we need to handle 'this' binding appropriately.
>
> (for (x of [1,2, 3]) this[x])
>
> can not desugar into
>
> (function*() { for (let x of [1,2, 3]) yield this[x]; })()
>
> because the 'this' binding would be wrong.

Good point, although the example in question did not use |this|, and I 
would have adapted if it had:

(function*() { for (let x of [1,2, 3]) yield this[x]; }).call(this)

Too bad that we don't have generator arrow function syntax :-P.

/be
domenic at domenicdenicola.com (2013-09-18T18:51:02.936Z)
Good point, although the example in question did not use `this`, and I would have adapted if it had:

```js
(function*() { for (let x of [1,2, 3]) yield this[x]; }).call(this)
```

Too bad that we don't have generator arrow function syntax :-P.