I've in the past described Exceptions as being like ComeFrom, which AlistairCockburn points out is inaccurate, as ComeFrom actually specifies where you will ComeFrom. Exceptions JustSayGo, so that when you read code that raises one, you cannot know what will happen next. This may be necessary in some cases, but it isn't good. Where possible, code the flow of control explicitly. ---- See also: ExceptionsAreOurFriends, CodeWithoutExceptions, and related pages.