this post was submitted on 24 Dec 2025
198 points (95.0% liked)

Technology

77935 readers
2408 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related news or articles.
  3. Be excellent to each other!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, this includes using AI responses and summaries. To ask if your bot can be added please contact a mod.
  9. Check for duplicates before posting, duplicates may be removed
  10. Accounts 7 days and younger will have their posts automatically removed.

Approved Bots


founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] tonytins@pawb.social 69 points 1 day ago (3 children)

Plans move to Rust, with help from AI

As if AI could handle the mountains of checks Rust has you account for.

[–] vala@lemmy.dbzer0.com 1 points 1 hour ago

I'm my experience, LLMs are especially bad at Rust. They really don't seem to grasp the borrow checker.

AI: This is unsafe. This is also unsafe. This third one? Unsafe.

[–] tal@lemmy.today 5 points 1 day ago* (last edited 1 day ago) (3 children)

While I agree that I don't think that an LLM is going to do the heavy lifting of making full use of Rust's type system, I assume that Rust has some way of overriding type-induced checks. If your goal is just to get to a mechanically-equivalent-to-C++ Rust version, rather than making full use of its type system to try to make the code as correct as possible, you could maybe do that. It could provide the benefit of a starting place to start using the type system to do additional checks.

[–] darvit@lemmy.darvit.nl 23 points 19 hours ago
unsafe {
   <the whole codebase>
}
[–] MartianSands@sh.itjust.works 8 points 19 hours ago (1 children)

The safety designed into Rust is suddenly foreign to the C family that I'm honestly not sure you can do that. Even "unsafe" Rust doesn't completely switch off the enforced safety

[–] InnerScientist@lemmy.world 3 points 15 hours ago

Yeah, to quote the manual:

"[Unsafe Rust allows you to]

  • Dereference a raw pointer.
  • Call an unsafe function or method.
  • Access or modify a mutable static variable.
  • Implement an unsafe trait.
  • Access fields of unions.

[...] The unsafe keyword only gives you access to these five features that are then not checked by the compiler for memory safety."

https://doc.rust-lang.org/book/ch20-01-unsafe-rust.html

[–] Miaou@jlai.lu 3 points 18 hours ago* (last edited 18 hours ago)

If they rely on UB at all, then this won't work. At best you get a compile time error, but more likely your rust program will do weird stuff with memory. And given how much people rely on compilers "acting nice" when it comes to aliasing (something rust does not fuck around with), I wouldn't hold my breathe