1. Barry Warsaw > This means that any PEP which proposes syntactic changes to support typing > features must also address the implications of those syntax changes for the > general Python language. PEP 646 (Variadic Generics) is a good example of > this. Early on we recognized that the proposed syntax change had > implications for Python, and we asked the PEP authors to address those > implications for Python, which they added:
Yes, we definitely plan to include syntax implications in the PEP. (I'm co-author of PEP 646 :) ) This was one of the reasons we wanted to get high-level feedback here, since our proposal includes a syntax change for Python. 2. Łukasz As Steven mentioned, your proposal of using a function name as its type is definitely something we're keeping in mind. It comes under the "alternative proposals" I talked about in part 2. As a replacement for Callable itself (part 1), writing a separate function signature is much more verbose and inconvenient. Given how frequently we need to express simple positional-only callables (like `Callable[[Request], Response]`) and ParamSpec callables, the consensus was strongly in favor of having simple inline syntax. However, when it comes to complex features like named parameters, default values, and `**kwargs` (part 2), your proposal might well be more readable than "hybrid" syntax. These use cases rarely come up, based on our stats, so a simple, syntax-free change like yours might be better than trying to duplicate everything that can be expressed in function signatures. So, shorthand syntax + function-name-as-type could be a good overall solution for part 1 and part 2. This would give us simple and friendly syntax for the most common cases and readable syntax for the advanced cases. What do you think? _______________________________________________ Python-Dev mailing list -- python-dev@python.org To unsubscribe send an email to python-dev-le...@python.org https://mail.python.org/mailman3/lists/python-dev.python.org/ Message archived at https://mail.python.org/archives/list/python-dev@python.org/message/4HDZ344W466RC7VPFD4MLUOJEOG7JDZJ/ Code of Conduct: http://python.org/psf/codeofconduct/