I can perfectly agree to much of what they say, but here...
> The C language is old and boring. It is a well-known and well-understood language.
...I think they are very fundamentally mistaken. C is a horribly complicated language. It is one of the least-understood languages out there. Experienced programmers and compiler authors can debate for hours about whether C code of less than 50 lines has defined behavior or not, and still not come to a conclusion. People can write an entire PhD thesis <https://robbertkrebbers.nl/thesis.html> studying the semantics of C, and still leave many open question (chapter 2 of that thesis does not require any academic background to be understandable, and it comes with tons of links to tickets/questions filed against the C standard). Consistently writing safe C/C++ is near impossible <http://robert.ocallahan.org/2017/07/confession-of-cc-program..., and judging from <https://sqlite.org/testing.html> the SQLite team agrees.
C is old, yes -- and C has boring and well-understood fragments. But full C is very, very poorly understood.
Just to be clear: The SQLite project strives to fix UB whenever any is discovered (which is to say, "rarely"). But SQLite also focuses on testing at the machine-code level, not just at the source code level. The machine-code generated by GCC, CLANG, and MSVC is all tested to 100% branch coverage and beyond. So even if one were to find some new UB in the SQLite source code, all the usual compilers are known to be doing something sane with it, not something goofy or harmful, and so it is not really a problem.
> The C language is old and boring. It is a well-known and well-understood language.
...I think they are very fundamentally mistaken. C is a horribly complicated language. It is one of the least-understood languages out there. Experienced programmers and compiler authors can debate for hours about whether C code of less than 50 lines has defined behavior or not, and still not come to a conclusion. People can write an entire PhD thesis <https://robbertkrebbers.nl/thesis.html> studying the semantics of C, and still leave many open question (chapter 2 of that thesis does not require any academic background to be understandable, and it comes with tons of links to tickets/questions filed against the C standard). Consistently writing safe C/C++ is near impossible <http://robert.ocallahan.org/2017/07/confession-of-cc-program..., and judging from <https://sqlite.org/testing.html> the SQLite team agrees.
C is old, yes -- and C has boring and well-understood fragments. But full C is very, very poorly understood.