// this seems like a generator function, but there's a catch ...function*sequence(...iterables) {// --------------------------------------------------------------// โญ `yield/yield*` only available within generator functionsโ// --------------------------------------------------------------// โ but this `yield*` is within an "arrow function"โ//// โญโโโ ๐ธ arrow function โโโโฎ
is the argument to the next call of (๐ see๏ผ )
when the " after yield" is evaluated and yielded, the execution of the generator code stops right there, and the value of the "yield expression" itself is still undefined and waiting for the next call of to send it in. (will remain undefined if there's no further call any more)
can be considered as a new starting point for the next callof.