I don’t understand why the above got down-voted... Without fusing (lazy) loops, having a bunch of independent sequential transformations (each with its own loop) can make the same computation significantly slower!
[1] http://journal.stuffwithstuff.com/2015/02/01/what-color-is-y...