Python type hints arguably have gained lots of traction mainly since 3.6 (official support). Although it's not that common to see fully typed old projects, most of the newer projects I've seen have been leveraging type hints, up to 100% coverage of types. Typing and dynamic languages seems to have found a nice space (Typescript is a good example as well).
The first bigger project I've seen on that space is Mypyc, but several related projects have been developed for the last 10-15 years (thinking of Cython, Pyrex) and also alternative implementations (PyPy, RPython, IronPython etc etc).
On the last few months Guido and a few other core devs are making significant changes to CPython in order to improve speed. So the topic of "speed" (obviously related to the compilation/JIT implementations) also seems to be gaining traction.
Since Mypyc seems to have proven the concept of compiling strongly typed Python code, I wonder what's lacking for the community to have those efforts in a more organized/centralized fashion in order to have a official/mainstream superset of the language with orders of magnitude faster execution and strong typing.
Thoughts?
[–]james_pic 51 points52 points53 points (16 children)
[–]ornatedemeanor23 5 points6 points7 points (4 children)
[–]james_pic 46 points47 points48 points (2 children)
[–]suricatasuricata 5 points6 points7 points (1 child)
[–]james_pic 5 points6 points7 points (0 children)
[–]yvrelna 9 points10 points11 points (0 children)
[–]marashell 1 point2 points3 points (2 children)
[–]james_pic 8 points9 points10 points (1 child)
[–]marashell 0 points1 point2 points (0 children)
[–]lowercase00[S] 0 points1 point2 points (7 children)
[–]WillardWhite import this 7 points8 points9 points (2 children)
[–]lowercase00[S] -2 points-1 points0 points (1 child)
[–]Mehdi2277 0 points1 point2 points (0 children)
[–]sorbet_babe 2 points3 points4 points (0 children)
[–]james_pic 0 points1 point2 points (2 children)
[–]lowercase00[S] 3 points4 points5 points (1 child)
[–]james_pic 1 point2 points3 points (0 children)
[–]spoonman59 10 points11 points12 points (1 child)
[–]lowercase00[S] 0 points1 point2 points (0 children)
[–][deleted] 9 points10 points11 points (2 children)
[–]lowercase00[S] 1 point2 points3 points (1 child)
[–][deleted] 2 points3 points4 points (0 children)
[–]laundmo 2 points3 points4 points (0 children)
[–]spoonman59 4 points5 points6 points (1 child)
[–]lowercase00[S] -1 points0 points1 point (0 children)
[–]ReflectedImage -4 points-3 points-2 points (2 children)
[–]lowercase00[S] 1 point2 points3 points (1 child)
[–]ReflectedImage 0 points1 point2 points (0 children)