On Wed, 2 Dec 2020 19:24:08 +1100 Chris Angelico firstname.lastname@example.org wrote:
On Wed, Dec 2, 2020 at 7:11 PM Paul Sokolovsky email@example.com wrote:
Python can't change its execution plans based on type
CPython can't, other Pythons can. Mypyc is a well-known Python which changes its execution plans based on type annotations.
"Mypyc is (mostly) not yet useful for general Python development."
No worries, I don't claim that the strict mode is suitable for production use already. It's literally the first time a "full spec" (and still apparently subject to change") is posted and reference implementation is provided, beyond mentioning the idea here and there.
So, it's not a fully compliant Python implementation. Is there any fully compliant Python that changes its behaviour based on type annotations? If not, "Python == CPython" isn't the problem here.
So, literally, more and more people are concentrating on a task of how to do better things with *good* Python programs, because how do to about *any* Python program is know for decades - just run it in a slow ugly interpreter, full of legacy [censored], commonly known as "CPython".
Definition of "good" is still being sought for, and likely will vary from faction to faction. For example, there're people who seriously think that a "good Python program" is the one littered up to a sizable part of its content with ugly-looking type annotations of the current generation (already legacy, as pre-PEP563). My proposal gives an alternative example of what a "good Python program" may be. YMMV