Use generators and yield to write regular callback-based functions
github.com/gkovacs/cfy
gkovacs/cfy