tags: #publish
links: [[Rust]]
created: 2021-07-25 Sun
---
# Why Rust is good for systems programming
**Safe Systems Programming in Rust**: https://dl.acm.org/doi/pdf/10.1145/3418295?download=true
Rust is low-level enough for systems programming, but removes several of the common pitfalls with other low-level languages such as C.
- Safety guarantess yet keeps control over resource and memory management
- Strong type system for compile-time prevention of pitfalls:
- Ideas of ownership, borrowing, lifetimes, which statically prohibit mutation of shared state.
- But it's selectively allowed as unsafe code when needed
- Type system allows machine-checked formal proof of a lot of things e.g. semantic type soundness