4 Reasons Not to Use Programming Loops (and a Few Ways to Avoid Them)