In production code, you'd generally avoid recursion to avoid stack overflows.
Given in most languages you can't enforce tail call optimisation, it's risky to use unbounded recursion.
Given in most languages you can't enforce tail call optimisation, it's risky to use unbounded recursion.
The last time I worked on a project with that rule was about 23 years ago, and that was on a 32-bit system.