Hi Chris, An extraordinary claim is like "DbC can improve *every single project* > on PyPI". That requires a TON of proof. Obviously we won't quibble if > you can only demonstrate that 99.95% of them can be improved, but you > have to at least show that the bulk of them can.
I tried to give the "proof" (not a formal one, though) in my previous message. The assumptions are that: * There are always contracts, they can be either implicit or explicit. You need always to figure them out before you call a function or use its result. * Figuring out contracts by trial-and-error and reading the code (the implementation or the test code) is time consuming and hard. * The are tools for formal contracts. * The contracts written in documentation as human text inevitably rot and they are much harder to maintain than automatically verified formal contracts. * The reader is familiar with formal statements, and hence reading formal statements is faster than reading the code or trial-and-error. I then went on to show why I think, under these assumptions, that formal contracts are superior as a documentation tool and hence beneficial. Do you think that any of these assumptions are wrong? Is there a hole in my logical reasoning presented in my previous message? I would be very grateful for any pointers! If these assumptions hold and there is no mistake in my reasoning, wouldn't that qualify as a proof? Cheers, Marko On Tue, 25 Sep 2018 at 21:43, Chris Angelico <ros...@gmail.com> wrote: > On Wed, Sep 26, 2018 at 3:19 AM Marko Ristin-Kaufmann > <marko.ris...@gmail.com> wrote: > >> Claiming that DbC annotations will improve the documentation of every > >> single library on PyPI is an extraordinary claim, and such claims > >> require extraordinary proof. > > > > > > I don't know what you mean by "extraordinary" claim and "extraordinary" > proof, respectively. I tried to show that DbC is a great tool and far > superior to any other tools currently used to document contracts in a > library, please see my message > https://groups.google.com/d/msg/python-ideas/dmXz_7LH4GI/5A9jbpQ8CAAJ. > Let me re-use the enumeration I used in the message and give you a short > summary. > > > > An ordinary claim is like "DbC can be used to improve code and/or > documentation", and requires about as much evidence as you can stuff > into a single email. Simple claim, low burden of proof. > > An extraordinary claim is like "DbC can improve *every single project* > on PyPI". That requires a TON of proof. Obviously we won't quibble if > you can only demonstrate that 99.95% of them can be improved, but you > have to at least show that the bulk of them can. > > > There are 150K projects on pypi.org. Each one of them would benefit if > annotated with the contracts. > > This is the extraordinary claim. To justify it, you have to show that > virtually ANY project would benefit from contracts. So far, I haven't > seen any such proof. > > ChrisA > _______________________________________________ > Python-ideas mailing list > Python-ideas@python.org > https://mail.python.org/mailman/listinfo/python-ideas > Code of Conduct: http://python.org/psf/codeofconduct/ >
_______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/