• mrspaz@lemmy.world
    link
    fedilink
    arrow-up
    44
    ·
    1 day ago

    Lookin’ good. Just be sure to put “unsafe” before all your function definitions.

    unsafe fn main()

    That’ll do ya.

    • rockSlayer@lemmy.blahaj.zoneOP
      link
      fedilink
      English
      arrow-up
      25
      ·
      1 day ago

      Excellent, thanks for the tip! I’m thinking of writing a linked list and creating reference pointers to the list so I can copy it and change the copy. Unsafe fixed all the problems, but my PC keeps crashing. I think it’s some non-rust util smh

          • Err(()).unwrap()@lemmy.worldM
            link
            fedilink
            arrow-up
            2
            ·
            8 hours ago

            The borrow checker is a feature in the compiler. It only ensures that the source code doesn’t violate its rules at compile time, and if it does, stops the compilation and shows an error message. If the borrow checker is disabled, the code will be compiled even if borrowing rules are violated (as long as the source code is otherwise valid).

            In short: removing the borrow checker turns Rust into C.

  • ShutUpWesley@piefed.zip
    link
    fedilink
    English
    arrow-up
    22
    arrow-down
    1
    ·
    1 day ago

    Rust is cool, but not the end-all-be-all solution some people have the impression it is.

    • Caveman@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      6 hours ago

      It’s not all good but the memory management and no undefined state is a huge plus for libraries to have.

    • chrash0@lemmy.world
      link
      fedilink
      arrow-up
      13
      arrow-down
      1
      ·
      1 day ago

      i mean, it’s a good fit for a utility like this. starts quick, runs fast, small memory footprint… all the benefits of C/C++ but with modern tooling and a sane type system.

    • tal@lemmy.today
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      21 hours ago

      I could understand caring a lot about the language if I were writing or maintaining something, but not usually if I’m just using a software package, unless it has performance implications. Maybe for software that has privilege escalation risk you maybe want a language that might help mitigate some security issues, but launchers shouldn’t fall into that camp.

      But, hey, people have their own preferences and opinions. Maybe someone’s super into Rust and wants to try to run as pure a Rust environment as possible or something.

      • Ephera@lemmy.ml
        link
        fedilink
        arrow-up
        3
        arrow-down
        1
        ·
        1 day ago

        I mean, just to offer you the counter perspective, IMHO programs written in X tend to have problem Y:

        • Python: Terrible error messages, buggy, sluggish, slow, but good documentation
        • Java: Gurgles RAM like there’s no tomorrow (but tends to do something useful with it), sluggish
        • Node.js: Just gurgles RAM for the fun of it, buggy, over-engineered functionality, confusing documentation
        • Rust: Over-engineered functionality
        • Go: Bad error messages, quirky detail behavior
        • Haskell: Practically 0 bugs, but if you do run into a bug, good luck. Thin documentation.
        • C/C++: Basically no bells or whistles, and no compiled build available. Also stupidly difficult compile on anything, except the singular dev’s PC.

        Obviously, these are caricatures, i.e. I’m overdrawing the details and omitting nuance. And these are also influenced by the kind of people that are drawn to these languages. And these are influenced by what I know about the languages, I didn’t conduct a double-blind study.

        But yeah, there’s a reason why Python ended up first on that list. I don’t have that hard of an opinion about the others, but genuinely, when I know a non-trivial program is written in Python, I will think twice whether I want to use it. Because it always seems to cost me a non-trivial amount of nerves in the end.

        • Fushuan [he/him]@lemmy.blahaj.zone
          link
          fedilink
          arrow-up
          3
          ·
          10 hours ago

          I know you said those are caricatures, but with C or C++, programs usually do have a make or cmake script to be built in 1-3 commands explained in the repo.

          I’d have mentioned that their more typical execution error message is “segfault”. Where? Fuck you, that’s where.

          • Ephera@lemmy.ml
            link
            fedilink
            arrow-up
            1
            ·
            20 minutes ago

            Ah yeah, segfault is a good point. And if you get more than that, it’s still often just an exit code and some generic print statement. 🫠

            And well, with C/C++ programs being difficult to compile, I was referencing that installing libraries is typically left as an exercise for the user.
            If you’re on a similar distro as the dev, it’s usually documented what you need to do. But if not, you get to guess what the library package might be called. Or if it’s available in a compatible version. Or at all.
            You just need to hope you get lucky, which should not be a factor in whether software compiles…

  • felsiq@piefed.zip
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 day ago

    semi-relevant to the joke, but for anyone who actually does want a rust based launcher there’s anyrun which works great on my systems

  • MaskedNybbles@piefed.social
    link
    fedilink
    English
    arrow-up
    13
    arrow-down
    1
    ·
    1 day ago

    I am unwilling to make light of another’s desire to learn so that they might help themselves, even if some of the phrasing feels a little silly and market-y.

    What does this post accomplish? Feels mean-spirited, really.

    • rockSlayer@lemmy.blahaj.zoneOP
      link
      fedilink
      English
      arrow-up
      21
      ·
      1 day ago

      I’m not making fun of that person. More power to them. I’m making fun of the rust community’s desire to rewrite the fabric of the universe in Rust

      • Shadow Glider@piefed.blahaj.zone
        link
        fedilink
        English
        arrow-up
        8
        ·
        1 day ago

        People rewriting common software in Rust is a good thing, regardless how good the original and its code was, it’s a fun exercise in coding if nothing else, and if it ends up worse than the original, that’s fine! That’s how you practice and learn, and it should be encouraged.

        Fuck corporations using Rust rewrites to replace GPL-licenced software with Expat-licenced ones.

      • Ephera@lemmy.ml
        link
        fedilink
        arrow-up
        10
        ·
        1 day ago

        As a Rust dev, I approve of this.

        (Especially the rewriting. Spacetime has way too many quirks and should be deprecated.)

      • MaskedNybbles@piefed.social
        link
        fedilink
        English
        arrow-up
        11
        ·
        edit-2
        1 day ago

        Alright. It just seems to me that anti-intellectualism is everywhere and that is what I first jumped to. I apologize for the accusation. It was knee-jerk. Carry on with your light-hearted ribbing, then.

      • GottaHaveFaith@fedia.io
        link
        fedilink
        arrow-up
        2
        ·
        23 hours ago

        I have to admit that reading the other post I did think “why is he learning C instead of rust”, so…

  • Randelung@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    1 day ago

    Wow, I hate the thumbnails just from this screenshot.

    Good luck, Rust is easy if you have a background in C/C++. Lifetime specifiers are a wrinkle, but also doable. I recommend you do Advent of Code tasks and ask an LLM for stylistic feedback.

    • rockSlayer@lemmy.blahaj.zoneOP
      link
      fedilink
      English
      arrow-up
      6
      ·
      1 day ago

      Dropping the /s for a moment, I actually already learned Rust about 7 years ago for my CS courses. There was a 7 week writing course where we had to pick a programming topic, centered on language design. I chose to generally discuss Rust because of lifetimes and found that there are a lot of cool things, but the syntax can get extremely dense