4 ms·
Python is statically typed though. [1][2][3][4] These aren't just some third-party tools bolted on. The type annotation syntax is built into the language[5] an
by gilch 4y ago
Python is statically typed though. [1][2][3][4]
These aren't just some third-party tools bolted on. The type annotation syntax is built into the language[5] and standard library[6][7].
I personally find static typing to be more trouble than it's worth most of the time. Industry typing metalanguages are not expressive enough to deal with even fairly basic real-world programs and force you to write bad code to work around the type checker's stupidity. And, of course, you still have to write tests. Maybe someday they'll catch up to Idris. Python's static typing is no better, but at least it allows you to turn it off when it's not worth it.
[1]: https://github.com/microsoft/pyright https://github.com/microsoft/pyright
[2]: https://github.com/python/mypy https://github.com/python/mypy
[3]: https://github.com/google/pytype https://github.com/google/pytype
[4]: https://github.com/facebook/pyre-check https://github.com/facebook/pyre-check
[5]: https://peps.python.org/pep-3107/ https://peps.python.org/pep-3107/
[6]: https://peps.python.org/pep-0484/ https://peps.python.org/pep-0484/
[7]: https://docs.python.org/3/library/typing.html#module-typing https://docs.python.org/3/library/typing.html#module-typing
- still_grokking 4y ago> Industry typing metalanguages are not expressive enough to deal with even fairly basic real-world programs and force you to write bad code to work around the type checker's stupidity. I honestly don't see that. Could you provide some examples?