On Mon, Oct 1, 2018, 9:13 PM Steven D'Aprano <st...@pearwood.info> wrote:
> For an application, it doesn't matter if my function sets the computer on > fire when passed the string "fish", if there is no way for the application > to pass that string to the function. If it can't happen, it can't happen > and there's no need to defend against it beyond a regression test. > How many times have you written or seen a comment in code similar to "This can't possibly happen!!" ... Usually in response to a failed debugging attempt. It's really hard to understands all possible execution paths that might result from all possible inputs and program states. "Fail early and fail hard" is a good principle... And indeed one generally in a spirit compatible with DbC. Beware of bugs in the above code; I have only proved it correct, not tried it. - Donald Knuth
_______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/