> On 19 Oct 2018, at 09:18, Thomas Güttler <guettl...@thomas-guettler.de> wrote: > > Imaging you are developing in the django context. > > Everytime you use a variable named "request" or "response" your human brains > knows that this is a subclass of django.http.HttpRequest and > django.http.HttpResponse. > > How to give the IDE this knowledge? > > One solution is the do typehinting everywhere the veriable gets used. > > But why does the human brain not need this? > > Because it is intelligent? > > I would not call this intelligence. There is a simple > dictionary in the brain of the developer, which maps: > > variable-name --> Type > > And this mapping dict exists once per library. > > If you are developing in the requests http lib, then > there is a different mapping. Then "response" means > type requests.Response. > > > Now my idea: Per module and/or per file type hinting from variable name. > > Maybe a magic docstring in the __init__.py file: > > """ > variable-name-mapping: > { > request: django.http.HttpRequest, > ... > } > """ > > This makes the type mapping available for all files in this directory (or > sub-directories). > > What do you think?
I tried to implement this in mypy quite recently actually, but gave up for various reasons. I am very much +1 on this. This would be a huge boon to preexisting code bases. / Anders _______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/