'function *' is not mandatory

Brendan Eich brendan at mozilla.com
Sat Aug 31 15:19:55 PDT 2013

Brian Kardell wrote:
> Fwiw, just bikesheddingly speaking I actually prefer the *.

Let's review. Three reasons for function* syntax:

1. Opt-in required for backward-incompatible definition of 'yield' as 
low-precedence unary prefix operator.

2. Zero-yield (no yield in body) basis case, useful for delegation via 
yield* from another generator.

3. Decorator to alert the reader that the body contains yield (ignoring 
2 for a moment) reason.

You are "bikesheddingly" supporting 3, I take it. Can you say more about 
why you want a decorator for human readers? Again ignoring 2, which 
makes the case based on what the JS engine must see, a more "objective" 
criterion in this case (and, in a different light, in case 1).


More information about the es-discuss mailing list