Comment by bsimpson
Sounds a lot like TypeScript and Flow.
Sounds a lot like TypeScript and Flow.
The current major type checkers, mypy and pyright, are also based on the same PEPs, but you can still see differences between them. For example, my codebase passes pyright in strict mode, but mypy results in a bunch of type errors. I'd expect pyrefly and ty to be slightly different from each other.
See also:
https://github.com/microsoft/pyright/blob/main/docs/mypy-com...
https://htmlpreview.github.io/?https://github.com/python/typ...
the specs are still evolving, and the various type checker implementations are what is driving them forward. in general, capturing the dynamic typing semantics of python in a gradually typed system is not a fully solved problem, and the type checkers are experimenting with various approaches to it.
Sure, but in this case they are both implementations of a spec defined by PEPs, so a bit more like gcc vs clang (less tightly bound than those, of course, in design decisions). Neither company is trying to invent a new language here.