Yin Wang is awesome and his work on programming languages and type inference is super impressive. We've been using his PySonar (v1) to build a global index of Python code and it works far better than we or anyone would have expected, for a dynamic language.
From a pragmatic perspective, I'd like to see an extension of this that enables me to ask PySonar to insert some validation magics in my functions and object methods to enforce the caller to use the appropriate types.
Here are some examples of what PySonar can do:
* Python stdlib, sorted by most-used functions: https://sourcegraph.com/hg.python.org/cpython
* Finding everywhere a function is used: https://sourcegraph.com/hg.python.org/cpython/symbols/python...
* All usages of the Django URL render_to_response function: https://sourcegraph.com/github.com/django/django/symbols/pyt...
* All usages of the Flask @app.route decorator: https://sourcegraph.com/github.com/mitsuhiko/flask/symbols/p...
This is all done using PySonar v1-based static analysis on Python code. PySonar v2 is even better.