Sieve of Eratosthenes using channels, with an implementation of coroutines
github.com