• pewpew@feddit.it
    link
    fedilink
    arrow-up
    7
    ·
    21 hours ago

    Rust is very popular because is as low level as C but has memory safety features builtin, so it is considered the best of both worlds. So basically what you said is correct.

    (Disclaimer: I am not a Rust programmer, I prefer C/C++)

    • JackbyDev@programming.dev
      link
      fedilink
      English
      arrow-up
      2
      ·
      18 hours ago

      I guess in my mind I just associate raw pointers with low level. But I guess Rust lets you do that with unsafe blocks still?

      • calcopiritus@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        14 hours ago

        Low level goes way beyond raw pointers. But yes, rust does have raw pointers.

        Java does have raw pointers too I believe though. I wouldn’t call it low level.

        But low level is not well defined. At some point, the difference between low level and high level used to be whether you had to write a different program for each computer architecture. Under that definition, C is a high level language. Assembly (and very old languages) would be low level.

        My own definition of low level is: if you have to care at all about memory management, it’s low level.

        Basically, if the language has a garbage collector or if it automatically counts references without you explicitly telling it so, it’s a high level language for me.