Just a general programming best practices question.
If I have a function like that takes in an array of items and the function then calls a series of other functions which filter and act on the items in the array, should execution continue if at any point we are acting on an empty array? E.g.
arrayItems = [ 1, 2, 3 ] filtered = filterItems(arrayItems) // Now we have [1,2] validItems = validate(filtered) // Now we have  processed = process(validItems) // Acting on 
Should I be checking for an empty array at each step before executing the next function or is it fine to continue if the later functions can handle an empty input?