In the angular documentation it says that you can take an object and bind it to a function with optional arguments like this:
angular.bind(self, fn, args);
If I understood correctly "self" becomes "this" for the returned (and modified) fn.
This is also easily done with core javascript:
fn.apply(obj, args);
Am I missing something here?