| ▲ | skydhash 15 hours ago | ||||||||||||||||||||||
> But, in 2026, I don't see why for native code everyone shouldn't be programming in Rust / Swift / other modern memory-safe flavor for any new production use. Zig if you want faster compile times, I guess. Because C is very simple (unlike Rust) and works everywhere. Zig is not yet stable. Go and Swift are under the governance of tech companies. The true appeal of C for me is the standard and how it applies only to the language. You can easily take a project from 2 decades ago and port it to a current platform. Lot of current ecosystem is way too fussy about tooling to do this. | |||||||||||||||||||||||
| ▲ | tialaramex 11 hours ago | parent [-] | ||||||||||||||||||||||
> Because C is very simple (unlike Rust) and works everywhere That's definitely true. C is a "Worse is better" language and as such it's everywhere. You can knock together a halfway usable C for some crap hardware in a few weeks and then the hardware is saleable because there's a C implementation. > You can easily take a project from 2 decades ago and port it to a current platform. Much of the software I wrote two decades ago in C won't even build today. Good luck figuring out why, periodically I try to figure out which weird 2000s era Mac OS hacks don't like a 2026 Linux system and eventually I give up and write modern software instead. In theory C written in 2006 definitely "just works" on a 2026 Linux machine but in practice real world C is broken and even though I (co)wrote it I don't know why. Also in practice the first serious Rust project I wrote in 2021 I just found it, checked out the oldest working version ("first rough working code" says the log) from git, cargo run, works as expected. Maybe it's because the C was four times older, but I think it's because in the real world you don't end up writing that mythical portable C code too often. | |||||||||||||||||||||||
| |||||||||||||||||||||||