this post was submitted on 26 Feb 2024
267 points (96.5% liked)

Programming

17540 readers
71 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
 

On the one side I really like c and c++ because they’re fun and have great performance; they don’t feel like your fighting the language and let me feel sort of creative in the way I do things(compared with something like Rust or Swift).

On the other hand, when weighing one’s feelings against the common good, I guess it’s not really a contest. Plus I suspect a lot of my annoyance with languages like rust stems from not being as familiar with the paradigm. What do you all think?

you are viewing a single comment's thread
view the rest of the comments
[–] mipadaitu@lemmy.world 71 points 9 months ago (1 children)

Depends on if you're coding for critical infrastructure (i.e. - electrical grid), or writing a high performance video game that can run on older hardware.

We should absolutely have specific licenses like Civil Engineers do for computer infrastructure that is required for any software written for specific purposes. It would be a nightmare to implement, but at some point, it's going to be needed.

[–] SorteKanin@feddit.dk 23 points 9 months ago (3 children)

writing a high performance video game that can run on older hardware

Unless it's some really exotic platform, I'd honestly still say no. Rust has shown that memory safety and performance doesn't have to be a tradeoff. You can have both.

But sure, if whatever you're targeting doesn't have a Rust compiler, then of course you have no choice. But those are extremely rare cases these days I'd say.

[–] themusicman@lemmy.world 21 points 9 months ago (1 children)

There's always a trade-off. In rust's case, it's slow compile times and comparatively slower prototyping. I still make games in rust, but pretending there's no trade-off involved is wishful thinking

[–] Lmaydev@programming.dev 29 points 9 months ago (1 children)

They mean a trade off in the resulting application. Compile times mean nothing to the end user.

[–] dgriffith@aussie.zone 11 points 9 months ago (1 children)

That may be true but if the language is tough to develop with, then those users won't get a product made with that language, they'll get a product made with whatever language is easier / more expedient for the developer. Developer time is money, after all.

[–] Lmaydev@programming.dev 3 points 9 months ago* (last edited 9 months ago)

You'd be better just using a managed languages in many cases.

With tiered jit and careful use of garbage allocations they can actually be the same or faster.

[–] MareOfNights@discuss.tchncs.de 1 points 9 months ago (1 children)

Can we stop pretending Rust doesn't take performance trade-offs? Of course if you compare it one to one its roughly the same, since it's compiled. But Optimizing memory for cache hits becomes a lot more difficult in Rust, to the point where you have to use unsafe. And unsafe Rust has more undefined behavior than C. In my opinion C is more safe than unsafe Rust.

If you want normal performance its a good Language, but once you need to Optimize memory, which is usually the bottleneck, You are out of luck.

[–] SorteKanin@feddit.dk 7 points 9 months ago

But Optimizing memory for cache hits becomes a lot more difficult in Rust

Why is this?