is there a reason to prefer a while to a 0.upto(rows).foreach type thing? Is there a performance difference? Do you find this while more readable?