Style #21 ============================== Constraints: - Every single procedure and function checks the sanity of its arguments and either returns something sensible when the arguments are unreasonable or assigns them reasonable values - All code blocks check for possible errors and escape the block when things go wrong, setting the state to something reasonable Possible names: - Defensive - Realistic - Hopeful - Shit happens, life goes on