• Dark ArcA
    link
    fedilink
    English
    arrow-up
    3
    arrow-down
    6
    ·
    2 days ago

    Rust still allows people to do (basically) whatever they want via unsafe blocks.

    • FizzyOrange@programming.dev
      link
      fedilink
      arrow-up
      8
      arrow-down
      1
      ·
      2 days ago

      Yeah but I have written a lot of Rust and I have yet to use a single unsafe block.

      Saying “but… unsafe!” is like saying Python isn’t memory safe because it has ctypes, or Go isn’t memory safe because of its unsafe package.

      • Dark ArcA
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        6
        ·
        2 days ago

        See my reply to funtrek’s reply.

    • funtrek@discuss.tchncs.de
      link
      fedilink
      arrow-up
      6
      ·
      2 days ago

      Sure, but you have to explicitly enable this feature. In c++ you can use the oldest shit from twenty years ago and your compiler happily does its job. All my c++ books are full of “you shouldn’t use xy as it is deemed unsafe now, but of course you still can”.

      • Dark ArcA
        link
        fedilink
        English
        arrow-up
        2
        arrow-down
        6
        ·
        2 days ago

        If a “safe C++” proposal truly proposes a safe subset, then yes your C++ code would have to opt-in to doing unsafe things. For the purposes of this discussion of a safe subset … the point is moot.

        • FizzyOrange@programming.dev
          link
          fedilink
          arrow-up
          5
          arrow-down
          1
          ·
          2 days ago

          It’s not moot. The Safe C++ is opt-in to safety. It has to be because otherwise it wouldn’t be compatible with existing C++.

          • Dark ArcA
            link
            fedilink
            English
            arrow-up
            1
            arrow-down
            4
            ·
            edit-2
            2 days ago

            That’s a laudable difference /s. Using Rust is also an “opt-in” option.