I don’t see how type checking could become a viable future for python interpreters when pseudo dynamic typing in both c++ templates and Java generics have not stopped the march of dynamic languages that have dominated the programming world the last two decades.
Type hinting like functional programming is nothing more than gimmick in python. It’s not even syntactic sugar.
Overall the support on static typing is the fallacy that compilers can capture type related issues. In reality nothing could be further from the truth because compilers are stupid by definition. They expect a precisely defined type for type checking to become meaningful which is ok when you deal with simplistic C structures but when OOP enters the mix the shit hits the fan.
OOP is not only invented by dynamically typed languages , it’s so deeply tied to dynamic typing because of its tendency to gravitate towards abstractions that makes OOP in static typed languages so pointless with many arguing , including me, that’s if the the language is static typed is by definition not a OOP language.
Blender’s struggle with its dependency graph is a glaring example. Is an example as is the messy nature of DNA and RNA structures.
So it’s no surprise that modern C++ is so heavily dependent on templates.
On the other hand C is not going anywhere either because dynamic typing’s thorn is performance. Problem is in this case type hinting is not typing which means you get all the negatives without any of the positives.
Why Python has type hinting ? It was never meant as a language feature but rather as a tool to be used by IDEs and code analysis tools to make it easier for them to understand intention behind code.
It’s not all bad though static typing can improve code readability because it tends to be more clear about coder intention. So it’s definetly a good idea for more primitive types. Nonetheless because Python is a language designed to be far more powerful than anything out there, which is why it’s pure OO including its procedural coding , type hinting may be the new hype but it’s by nature unpythonic so it most likely will suffer the fate of function programming in python , after the initial excitement will fall to a similar oblivion.
Type hinting could be used by Blender to optimize performance for Blender standard types , unfortunately Blender data is so incredible complex that makes it prime candidate for full throttle dynamic typing. So I predict we ware going to see quite opposite of relying more and more on dynamic typing of Python to describe very complex Blender structures , especially ones not so heavily dependent on performance.
For performance, nothing changes , you either port code to C to take advantage of the high performance of static typing or you rely on tool that do this for you like numpy and Cython.
On the other hand AI could shape the future of type hinting in python , performance wise but judging from Guidos heavy reluctance to complicate the VM implementation which has been the prime reason he resisted JIT VMs like PyPy , I am not so optimistic he will be eager to take type hinting or even optional static typing seriously any time soon. People in support of static typing are nothing more than a vocal minority. So like functional coding it will remain a fancy feature to be used wisely on a need to rely on basis,