Speaker
Anjana Vakil
Description
Recursion and iteration usually seem like epic rivals, on opposite sides of a fundamental tradeoff between machine- and human-efficiency. Iteration's stateful repetition can be more performant, but many coders prefer to work with the self-referential abstraction of recursion. But in this talk we'll see that with a little love from JS, these apparently star-crossed paradigms can actually unite to improve each other: custom Iterables allow recursion to power more human-efficient iterative code, and tail call optimization uses iteration to make recursive code more machine-efficient.