Yes, we should strive for clarity. I fail to see how using a perl feature exactly as it is intended is less "clean" or "clear" than code which simulates that feature. I doubt that there is single right answer. We have given the OP a choice. Neither of us should be too concerned about his choice.