News for hackers. Stuff that matters.
Re:The Python yield keyword explained by eru on Wednesday January 30, 2013 @10:44AM (#5139917)
> For coroutines, each coroutine needs its own stack. That means you have to have a dynamic memory system baked into the language. And maybe garbage collection too.

Why? Just statically give every co-routine it's own stack.

Re:The Python yield keyword explained by csense on Sunday February 03, 2013 @03:33AM (#5159097)
The number of coroutine invocations, and the order in which they're cleaned up, could depend on user input. The former could be unbounded.

More formally, I'm pretty sure you can write a program that always halts, but for every pair of large numbers N, K > 0, there are at least K different input values that result in (1) at least N coroutine invocations being simultaneously active, and (2) for each of those K different input values, those invocations finish in a different order.