• mamg22@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    19
    ·
    4 days ago

    So they rewrote poor Zig code into what probably is even poorer Rust code, and from what I’ve seen, using their AI to do it. Yeah, that sounds like they’re getting a fully functional and non-buggy piece of software.

    • Ghoelian@piefed.social
      link
      fedilink
      English
      arrow-up
      7
      ·
      4 days ago

      And they’re initially doing it without Rust’s memory safety borrow checker iirc, so a big part of the benefit isn’t there

      • Traister101@lemmy.today
        link
        fedilink
        arrow-up
        7
        ·
        4 days ago

        Unsafe Rust code doesn’t turn off the borrow checker, it basically just allows you to play with pointers and call code that the compiler can’t (or can’t right now) statically assert is sound. IE if you roll your own Vtable the functions are safe to call, but the compiler can’t tell so you have to use unsafe

      • mamg22@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        4 days ago

        Ok this is funny. Like “look bro, we rewrote bun in Rust because it’s ✨Safe✨ and all that”, and they’re not even trying lmao

        In all seriousness, part of that issue probably comes from the original code already ignoring the safety features of Zig, and whatever LLM they used to port it just doing the most half-assed thing and doing a literal translation of the code.

        The future of software development, ladies and gentlemen

        Edit: rust safety

        Yes I know unsafe in rust doesn’t mean unsafe code, it just that the compiler trusts you to correctly use the interfaces and references since it won’t check them inside such blocks