The function collide-with modifies its third argument, an instance of CollisionResults, by potentially adding a new CollisionResult object. It's conventional in Clojure to mark functions which are not pure functions with an exclamation mark suffix.
I propose:
- create a new function
collide-with! with the same code as the existing collide-with;
- alter
collide-with to call collide-with!;
- deprecate
collide-with in favour of collide-with!.
Let me know whether a pull request to this effect would be acceptable.