Python is memory safe? Can’t you access/address memory with C bindings?

  • I’m just a modder and primarily use C, but started with BASIC and then C++; I am curious, without knowing anything other than the name and it’s apparent growing popularity: What makes Rust so appealing? And if I was interested in trying to learn Python again, would it be better to just learn Rust instead?

    • lordmauve@programming.dev
      link
      fedilink
      arrow-up
      3
      ·
      8 months ago

      Rust has a lot going for it beyond just the safety thing: excellent package manager, powerful trait system and generics, helpful compiler errors.

      The whole language is designed to help you avoid making the programming mistakes people tend to make, not just the borrow checker and memory safety.

    • Gaia [She/Her]@lemmygrad.ml
      link
      fedilink
      arrow-up
      3
      ·
      8 months ago

      I guess I kind of see it like this: I wouldn’t touch C or C++ without a 10-ft pole. Rust is my 10-ft pole.

      That being said, I think python occupies a very different space from rust and allows for super rapid prototyping so I wouldn’t conflate the two

    • verstra@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      8 months ago

      It feels like the last language one will need to learn.

      It has an improved C-style syntax (if statement is similar to if expression), it has algebraic type system (enums can contain nested data) and 99.9% of the time you can write in safe mode where you are guaranteed not to segfault.

    • Macil@programming.dev
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      8 months ago

      Rust is the only language with the same low-level memory model of C/C++ (no garbage collector, focus on zero cost abstractions, etc) while also being memory-safe (like nearly all popular modern languages besides C/C++). Before Rust, you often had to choose between memory safety and performance.