@alexhall I just tried a quick program with gcc/Linux and reading out of bounds of an array returned a 0 without any error. (I guess that's uninitialized memory or something.)
Rust will panic, which by default will halt the program. The Rust book is comparing with C (many would say because Rust targets programs where traditionally C would be used), so it's quite different in that regard. Although this is the behavior in many other programming languages.