3 ms·
C is effectively a _predictable_ and portable assembler. You can't do that with Rust because everything is catastrophically moved, which makes it harder for hum
by PartiallyTyped 5y ago
C is effectively a _predictable_ and portable assembler. You can't do that with Rust because everything is catastrophically moved, which makes it harder for humans to predict emitted code, and Go afaik has a runtime.
- pjmlp 5y agoPreditable when code is either compiled with -O0 or the target CPU is a PDP-11 clone.
- PartiallyTyped 5y agoLinus seems to disagree with you. Albeit old http://www.youtube.com/watch?v=MShbP3OpASA&t=20m45s http://www.youtube.com/watch?v=MShbP3OpASA&t=20m45s It remains true. Rust uses references all over the place and reuses the same memory addresses within stack that once belonged to another object because the compiler can guarantee it, but that makes it much less reasonable to write. If you can reason with -O0 you can take it that your code will remain correct in later levels.
- pjmlp 5y agoI don't care what Linus thinks, I also happen to disagree with him in regards to C++ and NVidia. > If you can reason with -O0 you can take it that your code will remain correct in later levels. Unless you happen to be a Jedi master in UB performance optimizations, auto-vectorization, OMP, out of line code execution, I very much doubt that.