<p dir="ltr">On Sep 7, 2016 4:28 AM, "Hugh Fisher" <<a href="mailto:hugo.fisher@gmail.com">hugo.fisher@gmail.com</a>> wrote:<br>
><br>
> There's been discussion here and on python-dev regarding PEP 526 that<br>
> assumes there will be multiple type checkers for Python. I really<br>
> can't see this happening.</p>
<p dir="ltr">It already did:</p>
<p dir="ltr">- mypy<br>
- pytype<br>
- PyCharm has an integrated one<br>
- pylint will add support in the future</p>
<p dir="ltr">> If typing annotations become common or maybe<br>
> considered best practice, the Zen of Python "there should be one-- and<br>
> preferably only one --obvious way to do it" will take effect.<br>
><br>
> Firstly, the interpreter will need to have type checking built in.</p>
<p dir="ltr">A lot of people would disagree.</p>
<p dir="ltr">> Just about every intro book and tutorial for Python says how great it<br>
> is that you don't have an edit-save-compile cycle, just fire up the<br>
> Python interpreter and start typing. Having to run a separate type<br>
> checker will be considered as ridiculous as a C compiler that didn't<br>
> run the preprocessor itself.<br>
></p>
<p dir="ltr">Remember: you don't have to run it. You can prototype to your hearts content and then have it run as a commit hook. So you still have the nice, tight cycle that you mentioned.</p>
<p dir="ltr">> Secondly, PyPI will collapse if there isn't just one.</p>
<p dir="ltr">Too late!</p>
<p dir="ltr">> How can we<br>
> express dependencies between packages that use different type<br>
> checkers?</p>
<p dir="ltr">Add the type checker to the dev dependencies; as long as it's PEP 484-compatible, the user couldn't care less.</p>
<p dir="ltr">> When type checkers themselves have versions?</p>
<p dir="ltr">CPython has versions.</p>
<p dir="ltr">> When a dev team<br>
> uses one type checker for 1.x and then switches to another for 2.x?</p>
<p dir="ltr">That's the dev team's problem.</p>
<p dir="ltr">> That's a special circle of hell.<br>
><br>
><br>
> --<br>
><br>
> cheers,<br>
> Hugh Fisher<br>
> _______________________________________________<br>
> Python-ideas mailing list<br>
> <a href="mailto:Python-ideas@python.org">Python-ideas@python.org</a><br>
> <a href="https://mail.python.org/mailman/listinfo/python-ideas">https://mail.python.org/mailman/listinfo/python-ideas</a><br>
> Code of Conduct: <a href="http://python.org/psf/codeofconduct/">http://python.org/psf/codeofconduct/</a></p>
<p dir="ltr">--<br>
Ryan<br>
[ERROR]: Your autotools build scripts are 200 lines longer than your program. Something’s wrong.<br>
<a href="http://kirbyfan64.github.io/">http://kirbyfan64.github.io/</a></p>