<br><br>On Friday, August 22, 2014, Skip Montanaro <<a href="mailto:skip@pobox.com">skip@pobox.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra">There's been a lot to read in this and related threads over the past nine days. (According to Gmail. It qualitatively seems much longer to me.) I think I've followed along reasonably well. Forgive me if I missed the answers to these questions. The proposal on the table is to adopt MyPy's type annotations for Python 3.mumble. I presume MyPy already supports them.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">1. Can MyPy be used today as a standalone static type checker for Python 3.x code without actually compiling anything? That is, can I just sprinkle type annotations into my code and run a front-end pass of MyPy much the same way I'd run pylint, vulture, flake8, or other lint-ish program?</div>
</div></blockquote><div><br></div><div>Yes. mypy -S performs checking without execution. </div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">
<div class="gmail_extra">2. Assuming the answer to #1 is "yes," if you start sprinkling type annotations into your code and running "mypy *.py", will it tell you when it needs a missing type annotation to more fully check things, or will it silently process code without annotations and not let you know that it's not really checking much?</div>
</div></blockquote><div><br></div><div>No. It happily and silently accepts dynamic code with no annotations. It can't do much for you with that code, but it doesn't complain.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra">3. Will we get into a phase like the early days of "const" in ANSI C where addition of "const" in one location in your existing code base forced you into a never-ending iterations of adding const all over the place? I forget what that was called ("const propagation"?), but I recall that it generally wasn't a fun activity.</div>
</div></blockquote><div><br></div><div>Nope.</div>