And if youre using a library that takes a function and does something with it, or a function that you created, you are probably still creating a function called add but you are calling it in a loop. If youre calling your library in a loop, then you need to create a function called add and call it in a loop.
A lot of people are not aware of the fact that you can create an object and have it create a new one in the first place. Or you can create and call a function and have it create a new instance in the first place.
The problem is that you think about it as a function but you don’t really do. You do that every time you click a button and it shows a different object that you created. You also don’t actually do it for every function that you create. It would be like having an object that allows you to have a function that takes a function and does something with it.
That is absolutely correct. A more correct statement would be that every function is an object. You can call any function of yours and have it create a new instance and have the function return that instance. It is impossible that any function will ever be an object. There are no two functions with the same name.