this post was submitted on 28 Feb 2024
231 points (96.4% liked)
Technology
60044 readers
2988 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related content.
- Be excellent to each another!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, to ask if your bot can be added please contact us.
- Check for duplicates before posting, duplicates may be removed
Approved Bots
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
C#
Isn't that only microsoft exclusive and closed source? Also does compiling it really yield the same speed as C, it is garbage collected isn't it?
Was always possible to compile+run C# on Linux using the Mono project. Until Microsoft "bought them out" and created .NET Core, a cross platform version of .NET that MS now encourages people to use instead...
Microsoft's new linux compile tools rub me the wrong way slightly, with the telemetry that's opt-in by default.
Mono is still extremely valuable for older .NET Framework apps under WINE though, way easier to setup compared to the official installers from what i've experienced.
No idea how compiled C# compares to C...
Compiled C# is about half the speed of C/C++
https://benchmarksgame-team.pages.debian.net/benchmarksgame/box-plot-summary-charts.html
But it also doesn't have memory leaks lol
Definitely. I’ve worked professionally in both. They both have a time and place. I’d be fine with moving all the low level stuff to Rust, but transitions don’t happen by decree so C/C++ will be around for the next 100 years too.
True that, I'm only at the beginning of my programming journey, so I have a very rough understanding of the differences, pros/cons, and best use cases for various languages.
*proceeds to wrap everything in unsafe {}