What does it mean that exceptions separate the “good path” (or “happy path”) from the “bad path”?
It’s another benefit of exceptions over return-codes. The “good path” (sometimes called the “happy path”) is the control-flow path that happens when everything goes well when there are no problems. The “bad path” (or “error path”) is the path that control-flow takes when something goes wrong when there is a problem. Exceptions, when done right, separate the happy path from the error path.