• JackbyDev@programming.dev
      link
      fedilink
      English
      arrow-up
      0
      ·
      4 months ago

      I once saw an issue someone made for some database and said that they were learning Rust and if the database was rewritten in Rust then they could help contribute!

        • Lucy :3@feddit.org
          link
          fedilink
          English
          arrow-up
          0
          ·
          4 months ago

          I care, when I need to compile a lot of stuff multiple times on not-as-fast machines. I’ll create a private repo powered by my workstation just for this. For C stuff I don’t need to, because I can just use my workstations power via distcc.

        • ZILtoid1991@lemmy.world
          link
          fedilink
          arrow-up
          0
          ·
          4 months ago

          Issue is, Rust is not a drop-in replacement for C. The memory safety features are just one part, and since Rust is also a “weakly” functional language, thus its prefered to write such code with it.

          • lad@programming.dev
            link
            fedilink
            English
            arrow-up
            0
            ·
            4 months ago

            Anything that is drop-in replacement for C (or C++ for that matter) is going to be awful because of the same compatibility burden, imo

          • CanadaPlus@lemmy.sdf.org
            link
            fedilink
            arrow-up
            0
            ·
            4 months ago

            Yeah, it’s not a small change. If there was a simpler way to make C memory-safe, it would have been done decades ago. It’s just a different language too, which is fair given how much younger it is.

            • ZILtoid1991@lemmy.world
              link
              fedilink
              arrow-up
              0
              ·
              4 months ago

              D kind of did that (C pointers are still an option, alongside with the preferred dynamic arrays, which has the memory safety features), and once I’ve seen a C compiler fork that retroactively added D-style memory safety features, although they also very much insisted on the “const by default” mantra.

              • CanadaPlus@lemmy.sdf.org
                link
                fedilink
                arrow-up
                0
                ·
                4 months ago

                I think this is one of those things where there’s no “kind of”. Pointers were added for a reason, you’re probably not going to implement a database very well without them. If you use them, at some scale you’re inevitably going to have memory bugs. Technically, if you were to only use hardcoded printfs, C is memory safe too.

            • ssm@lemmy.sdf.org
              link
              fedilink
              arrow-up
              0
              ·
              edit-2
              4 months ago

              If there was a simpler way to make C memory-safe, it would have been done decades ago.

              We’ve had compile time sanitizers (-fsanitize=blah in gcc/clang) and runtime sanitizers (valgrind) for ages. I don’t know how they stack up against rust’s compile time sanitizers, but it’s something.