Because it's not composable - each callback gets to/has to know about every other callback - when in reality, each one should only know what the next callback is in the chain. if you want recursion, you'd set up your callback to do that.