A more useful and less divisive future for typing?

Just going to add a recent extra example of tools being placed above users, the draft update to PEP 646 which was done because some type checkers made a mess of special casing that made something hard for them. Specification is literally being written to the detriment of users due to decisions that don’t put the user before the tool.

see PEP 646: Update draft (#1856) · python/peps@b95239f · GitHub which claims removal for that reason was fine because:

Apparently the implementation would be tricky in Pyre because of special-casing around Union. That could be evidence that it would be tricky in Mypy and pytype. Since we don’t have a specific use-case in mind, I think this is fine.

and Remove support for `Union[*Ts]` · Issue #6892 · microsoft/pyright · GitHub , the primer run for it showing that at least 2 projects were already willing to start using it at the experimental stage (and had a use for it)

Removing this from the draft was done purely because one type checker had an issue with it, to the detriment of many things for users including consistency.

2 Likes