2022 Dec 15
Learned how C++ smart pointers (unique_ptr, weak_ptr, shared_ptr) helps reduce mistakes in freeing up memory (memory leaks) and can mimick aspects of Rust’s borrowing/ownership system, however Rust’s compiler does much more than just that. Importantly, other features of Rust and it’s compiler enforce correctness/well-written code at compile time whereas implicitly a language like C++ enforces correctness at runtime by crashing or breaking. A prime example is the
Option
type, where if a variable may beNone/null
you are forced to check it as opposed to the possibility of it segfaulting in C++. ArticleSurfed the good first issues on the rust-lightning repository and got a general breadth of where I might be able to start soon.