Recursion
Notes
- There is always an exit condition ( or it would run forever , we never want that)
- There is always a value that changes and it is passed to the next execution, or otherwise it wouldn't make sense it would be always the same execution and the exit condition would never trigger.
- Think like frames of a movie, in paper or whiteboard, write a table with a column for every variable and a row for every step, my first programming teacher taught me this, and 19 years later it save me in a white board interview, it helps to calm down and just go step by step seeing how values evolve.
Links
- That one time I thought I understood recursion (2019) (HN)
- On Iteration and Recursion (1982)
- Tail Recursion Explained (2020)
- Thinking About Recursion (HN)
- Recursion Revisited
- Grokking recursion (2020)
- Spirals, Snowflakes and Trees: Recursion in Pictures (HN)
- How Not to Teach Recursion (Lobsters)
- How to get better at recursion (2021)
- Unifying Structured Recursion Schemes (2013)
- Program Reduction: A Win for Recursion Schemes (2018)
- Recursion is recursion is recursion is... (2021)
- Generic Recursion Applied to Algebraic Graphs (2022)
- More recursive definitions (2022) (Tweet)
- Ask HN: Is Recursion Worth It? (2023)