Recursive Factorial

Breathable code runs asynchronously, which makes it more complicated to combine the results of recursive functions, because you must first gather the results of the recursive function calls. Here's a simple example of calculating a factorial.

Source: