If you have to ask this question you should probably be using a garbage collected language. Manual memory management is quite tedious and it’s easy to make mistakes. Rust’s novel contribution is reliably catching the mistakes at compile time so once you have fixed all the compile time error messages you have a safe program. But it doesn’t ease the tedium that much.
GC does it automatically and is way more convenient, but inflicts a cost in runtime performance. That’s almost always fine on today’s computers, thus Python’s popularity. Rust is best for systems work where you need more precise control of machine resources. It is probably used more than necessary right now, because it’s new and exciting and programmers like that.
The safest language is probably Ada but it is less flexible than Rust. They are working on extending it to be comparable. Right now Ada isn’t well suited for programs that do lots of runtime allocation.
If you have to ask this question you should probably be using a garbage collected language. Manual memory management is quite tedious and it’s easy to make mistakes. Rust’s novel contribution is reliably catching the mistakes at compile time so once you have fixed all the compile time error messages you have a safe program. But it doesn’t ease the tedium that much.
GC does it automatically and is way more convenient, but inflicts a cost in runtime performance. That’s almost always fine on today’s computers, thus Python’s popularity. Rust is best for systems work where you need more precise control of machine resources. It is probably used more than necessary right now, because it’s new and exciting and programmers like that.
The safest language is probably Ada but it is less flexible than Rust. They are working on extending it to be comparable. Right now Ada isn’t well suited for programs that do lots of runtime allocation.