Understanding Memory Management, Part 1: C
I've been writing a lot of Rust
recently, and as anyone who has learned Rust can tell you, a huge part
of the process of learning Rust is learning to work within its
restrictive memory model, which forbids many operations that would be
perfectly legal in either a systems programming language like C/C++ or
a more dynamic language like Python or JavaScript. That got me thinking
about what was really happening and what invariants Rust was
trying to enforce.
In this series, I'll be walking through t...
Read more at educatedguesswork.org