`.size` is O(N) on a list. That seems like it is worth counting separately to me. If you ask for 1000 sized batches each and every get is going to traverse a O(1000) sized list. I think that one is worth keeping actually.