4 ms·
When building programs with user interfaces*, there are parts that _cannot_ be tested formally with either types or automated tests, because they require a huma
by enqk 6y ago
When building programs with user interfaces*, there are parts that _cannot_ be tested formally with either types or automated tests, because they require a human to test how things "feel."
In that context, long compile times lengthen the build-evaluate feedback loop to a point that harms quality.
* also note that APIs are user interfaces. So this harms way more than just programs with GUIs.
- yamrzou 6y agoSame for data analysis. It is mostly exploratory and iterative work, with the need for a feeback loop (making plots, checking for unusual values, etc.) because the input data is unpredictable. That's why data scientists prefer interpreted languages and Jupyter Notebooks.
- pif 6y agoThat's also why you get the -O0 and -O3 options.