Concurrency
Call
# times
What's it doing?
fib($n, 5)
1
Collecting all promises; waiting for and summing the result
fib($, 4)
2
Returning promises
fib($, 3)
4
Returning promises
fib($, 2)
8
Returning promises
fib($, 1)
16
Creating promises