Writing a recursive function requires a special kind of thinking, you have to write the function assuming that it already exists and you have to some how use it in the current function that you are writing. By the time you figure out how to call the other function, the problem would have been solved for you.
It is like trying to build a time machine, then realizing that, once you build it, you could travel back in time and give it to your younger self so that you didn't have to build it in the first place. But you still have the problem of how to start this whole process in a way that your future self has the possibility of completing the time machine and travel back.
After writing this post, I noticed that there is a name for this phenomenon. It's called the "Bootstrap paradox".
Comments
Post a Comment