3 ms·
I think one of the sources of this kind of attitude is experience with type systems that are clumsy or slow to use. This goes equally for languages without type
by aeturnum 6y ago
I think one of the sources of this kind of attitude is experience with type systems that are clumsy or slow to use. This goes equally for languages without type declarations and those with.
Personally, the two things I informally look for are:
* Does the language allow instant-to-a-human static analysis so I can see warnings when I'm passing the wrong type to a call?
* Will this language allow me to leave sections (almost always something I get off the wire) with minimal / no type information in order to come back to it later?
Typing is hugely powerful for avoiding problems. I've done a lot of work in Python, which I think has missed huge opportunities to introduce a more robust type-checking system. My current favorite is Elixir / Erlang, which I think uses pattern matching and static analysis to balance strong typing v.s. weak typing wins. It's interesting to compare Elixir to Elm. Elm has a much stronger type system, which means I almost never pass the wrong thing, but it also makes dealing with unstructured data much more frustrating.