Recursion, and recursive algorithms, have a reputation for being intimidating. They're seen as an advanced computer science topic often brought up in coding interviews. Moreover, coders often perceive the use of a recursive algorithm as a sophisticated solution that only true programmers can produce. But there's nothing magical about recursion. Its fearsome reputation is more a product of poor teaching than of the complexity of recursion itself.
The book also explains tail call optimization and memoization, concepts often employed to produce effective recursive algorithms, and the call stack, which is a critical part of how recursive functions work but is almost never explicitly pointed out in lessons on recursion. The last chapter, on fractals, culminates with examples of the beautiful fractal shapes recursion can produce.
Publisher: William Pollock, Production Manager: Rachel Monaghan, Production Editor: Miles Bond, Developmental Editor: Frances Saux, Cover Illustrator: James L. Barry, Interior Design: Octopod Studios, Technical Reviewer: Sarah Kuchinsky, Copyeditor: Sharon Wilkey, Compositor: Maureen Forys, Happenstance Type-O-Rama, Proofreader: Audrey Doyle
The book will be posted here in full under a Creative Commons license when it's released.
If you'd like to receive a free print copy of The Recursive Book of Recursion, please fill out the form at https://forms.gle/PeNCD3qz5SY14tJo8. You'll receive a free ebook to read, and upon posting a review to Amazon, you will receive a complementary print review copy of the book. (UPDATE: There's been a large amount of interest, and I can't guarantee you'll get a print book. However, I can definitely send you an ebook to review.)
Please post an honest review. Posting a negative review will not impact whether or not you get a free print book. The only requirements are that the review be a minimum of 100 words, you must live within the United States (due to shipping costs), you must have purchased $50 off Amazon in the last year (Amazon has this requirement before you can write a review), and that you email me first before writing the review.