Jason Voegele will be presenting:

The Wonderful World of Recursion

Recursion is an indispensable tool in the functional programmer’s toolbox, but when used improperly it can be the source of disastrous errors. The world’s most popular programming Q&A site is even named after the dreaded stack overflow error that is the result of misuse of recursion! How can we take advantage of this fundamental tool without falling victim to its pitfalls?

Join me as we journey through the wonderful world of recursion where we will discover a treasure trove of recursive techniques, including tail recursion, mutual recursion, and trampolines. We will also learn how tail call optimization is achieved (or not) in various languages. Example code and discussion is presented in various functional languages including Clojure, Scala, Elixir, Haskell, and F#.