Introduction In a perfect world, end-users would never enter data incorrectly. Files they wish to open would always exist. And programming would never have flaws. So far, we’ve primarily presented code as if we lived in a world where everything ...