3 ms·
And in the process, they ended up creating an extremely powerful type system that ~nobody outside of that original team can (fully) understand.
by smithkl42 1y ago
And in the process, they ended up creating an extremely powerful type system that ~nobody outside of that original team can (fully) understand.
- dathinab 1y agoIMHO they created type annotations, not a type system and how you use the type annotations to indicate a type system is inconsistent and incomplete (e.g. NoneType vs. None for inconsistency and a lot of mess related to mataclasses (e.g. Enum) and supporting type annotations for them for incomplete) the fact that even today something as fundamental as enums have issues with type checking _which are not just type checker incompetence_ is I think a good way to highlight what mess it is or that `Annotated[]` was only added in 3.9 and has a ton of visual overhead even through its essential for a lot of clean definitions in modern python code (where for backwards compatibility there is often some other way, which can be de-facto wrongly typed but shouldn't be type linted, have fun type checkers).
- simonw 1y agoParent comment was talking about TypeScript, not Python.
- johnfn 1y agoHow many people understand the intricacies of any complex language or type system? Though I think one of the great things about TS is that you need to understand none of it in order to do `npm install @types/lodash` and get all the benefits.