2 ms·
1. performance dominates (like 80:20) 2. tooling 3. doc (becomes crucial on large projects) 4. correctness Formal correctness doesn't really matter. Anec
by hyperpallium 9y ago
1. performance dominates (like 80:20)
2. tooling
3. doc (becomes crucial on large projects)
4. correctness
Formal correctness doesn't really matter. Anecdotally (since that's really all we have), I find in practice, very few bugs are caught by the type-checker.
Further, code is usually not typed as accurately as the language allows. i.e. the degree of type-checking is a function of the code; the language only provides a maximum.
In a sense, every value has a type, even if it's not formally specified or even considered by the programmer, in the same sense that every program has a formal specification, even if it's not formally specified.
Upfront design is the price. Which is difficult to pay when the requirements are changing and/or not yet known.
- nv-vn 9y agoWhat language in specific are you applying this to? I.e. what is the type checker that is catching few bugs?