External vs internal iteration