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

  • Rikj000@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    38
    arrow-down
    26
    ·
    edit-2
    9 months ago

    TLDR: But-hurt C++ dev has a hard time accepting that his favorite language is not memory safe.

    • Dark Arc@social.packetloss.gg
      link
      fedilink
      English
      arrow-up
      24
      arrow-down
      9
      ·
      9 months ago

      C++ is leagues above C in this regard. He’s rightly upset that they’re lumping the two together.

      Bjarne’s work for safety profiles could indeed manifest in a solution that guarantees memory safety; time will tell. C++ is a moving target.

      • marcos@lemmy.world
        link
        fedilink
        arrow-up
        19
        arrow-down
        6
        ·
        9 months ago

        C++ is leagues above C in this regard.

        It’s really not. It has the same flaws, some libraries that promise to avoid them (as long as you don’t hold them wrong - what every single programmer does), and lots and lots of new flaws that may come from anywhere.

        • vext01@lemmy.sdf.org
          link
          fedilink
          arrow-up
          5
          arrow-down
          2
          ·
          9 months ago

          I use C, C++ and Rust in my dayjob.

          I don’t like C++, but I disagree with your statement.

          C++ has:

          • a string type, which sidesteps error prone buffer juggling.
          • smart pointers for scope based deallocation.
          • generic data types. No more hand rolling list and mapping types with void *.

          It’s obviously still not a fully memory safe language, but it has some perks over C. I’d still much rather be using rust (most of the time).

      • Tobias Hunger@programming.dev
        link
        fedilink
        arrow-up
        12
        arrow-down
        3
        ·
        edit-2
        9 months ago

        That depends on how you decide which bucket something gets thrown into.

        The C++ community values things like the RAII and other features that developers can use to prevent classes of bugs. When that is you yard-stick, then C and C++ are not in one bucket.

        These papers are about memory safety guarantees and not much else. C and C++ are firmly in the same bucket according to this metric. So they get grouped together in these papers.