 job would necessarily accept each new value as a function parameter,
        returning after processing that single value. That function would depend
        on a static state variable. A <span class="emphasis"><em>coroutine-function</em></span>, however,
        can request each new value as if by calling a function -- even though its
        caller also passes values as if by calling a function. The <span class="emphasis"><em>coroutine-function</em></span>
        is executed in a newly created execution