Why would anyone need JavaScript generator functions?
Not sure about the timtam example. Couldn't this:<p><pre><code>  const flow = (...fns) => x0 => fns.reduce(
    (x, f) => f(x),
    x0
  );

  function slamTimTamsUsingFlow(timtams) {
    return timtams
        .slice(0, MAX_TIMTAMS)
        .map(flow(
            biteArbitraryCorner,
            biteOppositeCorner,
            insertInBeverage,
            drawLiquid,
            insertIntoMouth));
  }
</code></pre>
Just be written as:<p><pre><code>  const slamTimTams = timtams => 
     timtams
        .slice(0, MAX_TIMTAMS)
        .map(timtam => timtam.biteArbitraryCorner()
            .biteOppositeCorner()
            .insertInBeverage()
            .drawLiquid()
            .insertIntoMouth());
</code></pre>
Feels much more concise and readable than the flow example