• SorteKanin@feddit.dk
      link
      fedilink
      arrow-up
      9
      ·
      3 days ago

      Rust programs can definitely still consume a lot of memory. Not using a garbage collector certainly helps with memory usage, but it’s not going to change it from gigabytes to kilobytes. That requires completely rethinking how things are done.

      That said I’m very much in favour of everyone learning Rust, as it’s a great language - but for other reasons than memory usage :)

      • melfie@lemy.lol
        link
        fedilink
        arrow-up
        3
        ·
        3 days ago

        True, but memory will be freed in a more timely manner and memory leaks probably won’t happen.

        • mitchty@lemmy.sdf.org
          link
          fedilink
          arrow-up
          1
          ·
          20 hours ago

          Memory leaks are more than possible in rust. Rust type system prevents things like free being called on an already free resource. It very much also allows not calling free even when nothing references things. It also makes things like arena allocation a fun endeavor compared to other systems languages. It’s not impossible just trickier. Rust isn’t a panacea, you would need something more like idris with its type system to programmatically enforce resources are freed at runtime during the compilation phase. But a fully dependent type system is very much a bleeding edge thing.

    • TheAgeOfSuperboredom@lemmy.ca
      link
      fedilink
      arrow-up
      6
      ·
      3 days ago

      .clone() everything!

      I do kind of agree in a way though. Rust forces you to think a bit about memory and the language does tend to guide towards good design. But it’s not magic and it’s easy to write inefficient Rust too. Especially if you just clone everything. But I personally find Rust to be a good mix of low level control that feels sufficiently high level.

      Garbage collected languages can be memory efficient too though. Having easily shared references is great!