Slide 5
Slide 5 text
Performance + memory safety
⇒ ownership, borrowing, and lifetimes
⇒ safe, default context
Trait-based polymorphism
⇒ composition instead of inheritance
Enum types (tagged unions or sum types)
⇒ Option: None or Some(5) instead of NULLs
⇒ Result: Ok(T) or Err(E) instead of exceptions
Modular
⇒ crates + modules instead of includes
⇒ private by default
Tooling
⇒ rustup for bootstrapping
⇒ cargo for building, testing, benchmarking, publishing, etc.
Many more!
⇒ macros, pattern matching, etc.