Since the loop is once per contact, and contact is usually 1, I think the locality of the function is more important than some small optimization benefit when we're doing group SMS.