this post was submitted on 25 Dec 2025
120 points (91.1% liked)

Programming

24072 readers
441 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS
 

cross-posted from: https://sh.itjust.works/post/52190045

Microsoft wants to replace its entire C and C++ codebase, perhaps by 2030

you are viewing a single comment's thread
view the rest of the comments
[–] UnfortunateShort@lemmy.world 6 points 2 days ago (1 children)

I mean, Rust has the massive upsite that it won't compile in many cases if you fuck things up. Then again, embedded or generally low-level driver-y stuff is still in its infancy in Rust. Relative to C/C++ that is.

There is stuff that you need that has no official Rust support. There is poor documentation and half baked frameworks. There are examples being silently outdated, breaking changes between framework versions, and nighlty-versions from Github mixed in to fix them. And then of course plenty of timing and hardware dependent things you will need to do yourself.

I do this for a living and personally tried to use AI here and there to help me out, but oftentimes it fails miserably. Not always, but very often.

[–] MashedTech@lemmy.world 10 points 2 days ago (2 children)

Rust helps you resolve memory bugs. Not logic bugs. Yeah, it's going to be new memory safe code... But it won't be bugfree code.

[–] leftzero@lemmy.dbzer0.com 5 points 1 day ago (1 children)

Ain't gonna be memory safe either, they'll just wrap everything in unsafe.

[–] MashedTech@lemmy.world 3 points 1 day ago

Oh wait... It's AI. Just to pass the compiler and the unit tests it will either cast to whatever it desires or just make the tests pass forcefully.

[–] The_Decryptor@aussie.zone 2 points 1 day ago

It can help with logic bugs (e.g. by encoding the state machine logic directly in the type system, so an invalid transition won't compile), and things like data sharing issues (Again, type system, tracks sharable objects vs. those that aren't), but none of those are as "impervious" as the memory safety stuff.

But that all still requires rearchitecting, because if the existing code already follows those rules, it already probably doesn't suffer from those issues (e.g. I know you can do the state machine type stuff in C# at least)