voddan
07/27/2016, 8:15 PMHere, every time the coroutine is suspended at a call to yield(), the rest of its execution is represented as a continuation, so we create 10 continuations: first runs the loop with i = 2 and suspends, second runs the loop with i = 3 and suspends, etc, the last one prints "over" and exits the coroutine.