3 ms·
Improvements in tooling like address sanitizer, valgrind, afl also help a lot in improving code quality, especially if you make them part of your CI. However it
by edwintorok 7y ago
Improvements in tooling like address sanitizer, valgrind, afl also help a lot in improving code quality, especially if you make them part of your CI.
However it should possible to have a language that gives you both the speed and safety guarantees.
There are many languages that contend for that category: Go (not on speed though), Rust, etc.
Might be worth looking at some of the Rust projects like ripgrep that are really focused on performance and faster than C implementations like grep.
- DeathArrow 7y agoGo would never replace C because of speed and lack of direct memory access. Rust syntax is very ugly, Rust is more complex than C and harder to read. is very simple.
- pjmlp 7y agoGo can do the same direct memory access as C does via unsafe.Pointer. If you mean real hardware access, not even C can do that unless it is running bare metal without an underlying OS or MMU controlling the access, both situation outside of ISO C specification.
- makapuf 7y agoI wouldn't say baremetal is more outside of spec than MMU/ OS virtual memory is outside of spec.