If function f1 is unused, and f2 is only called from f1, Rust complains that both f1 and f2 are unused.
I find this confusing: it's useful to know that I can remove both functions, but removing f2 alone gives a compile error.
Not sure what the best tradeoff is though.
miniblog.
Related Posts
Lessons learned from writing a linter/static analysis tool for shell scripts: https://www.vidarholen.net/contents/blog/?p=859
(Preserve positions, use error codes and document them, and there's a tradeoff between beginner mistakes and advanced mistakes!)
Dependency management in Go: https://research.swtch.com/vgo-principles
There's a tradeoff between work for libraries (declare your minimum version/any incompatibilities) vs work for programs (investigate when dependencies aren't compatible). If programs are more common, should we empower them?
One fascinating property of chess engine design is that a deeper tree search can be more valuable than a smarter board value metric.
If a metric is more accurate but more computationally expensive, it might not be worthwhile! It's a precision/brute force tradeoff.