The utility of this concept becomes much clearer when you consider real-world examples.
Success and failure are passed "up" through functions, meaning that a failure inside a nested function will cause the functions calling it to fail as well.