Added an example of algorithm that uses a yield instead of a return.

These might be usefull if we want to do work outside of the loop, like
checkpointing or printing the log every other generation.
If we opt for a ```while True```, we will need to revise how ```gen```is computed.