3 ms·
Strong typing helps to catch more errors at compile time versus weak typing. It is not "testing", nor it is a substitute for testing but it does play a similar
by thesuperbigfrog 3y ago
Strong typing helps to catch more errors at compile time versus weak typing.
It is not "testing", nor it is a substitute for testing but it does play a similar role in discovering and preventing errors.
- ReflectedImage 3y agoIt's only around 1% of errors, it's not very good.
- threeseed 3y agoIn Scala we have a robust type system and so it's possible to model out your application through types. For me 99.9% of all bugs are detected at compile time. Whereas when I go back to using Python it's more like 50%.
- ReflectedImage 3y agoThen you are shipping some incredibility buggy software then whether you are aware of that or not. The overwhelming majority of bugs in software are behavioural bugs, which typing does not catch. If you want to go down the formalism route to catch bugs then at the bare minimum you require Z formal specifications for all your code. Do you have Z formal specifications for all your code?
- troupo 3y agoYou're confusing typing categories :) Weak vs. strong typing is orthogonal to static vs. dynamic. E.g. JS is weak dynamic. Python is strong dynamic. C/C++ are weak static. Haskell, Rust are strong static. Etc. And the weak/strong is not binary, it's a spectrum
- drewcoo 3y ago> You're confusing typing categories :) I find if my typing is really accurate, I introduce fewer bugs! /s