The only problem, what if your language adopts an idea which prevents you from having a better API?
As far as I know, coroutine/generator doesn't prevent you from doing anything.