Style #22 ============================== Constraints: - Every single procedure and function checks the sanity of its arguments and refuses to continue when the arguments are unreasonable, throwing an exception - All code blocks check for all possible errors, print out context-specific messages when errors occur, and pass the exceptions up the function call chain Possible names: - Tantrum - Design by contract - Mental breakdown