> i wonder how could you not hear of it?

I have absolutely heard of it, but just because they wrote some code doesn't make it the correct way, the best way, or even gives any extra weight to that code. All it means is that they wrote it at some point. What I am trying to say is "Starling did it" doesn't actually mean anything.

1. That is a good case for optimizing removal, maybe that makes sense to update the array only once.
2. Pooling objects is a pretty common optimization, not sure that has anything to do with what we are discussing though.

In the case of particles maybe it does make sense to remove them in the same loop we are updating in already. I'm OK with that, that is a solid case for this being a better solution.