▲ | justcuriousab 6 days ago | |||||||||||||||||||||||||
> It's not possible to port a millions line C++ code base, like Chrome, to another language so large C++ projects are stuck with objectively pretty bad language and are forced to continue to use C++ even though a better language might exist. One good aspect about C++ is its backwards compatibility or stability. Also a drawback, but companies not having to spend huge amounts of time, expertise and money rewriting their whole codebases all the time is something they appreciate. Rust is often somewhat stable, but not always. https://internals.rust-lang.org/t/type-inference-breakage-in... https://github.com/rust-lang/rust/issues/127343 300 comments on Github. https://github.com/NixOS/nixpkgs/pull/332176 Rust has editions, but it's a feature that it will probably take years to really be able to evaluate. What kind of compatibility story will Carbon have? What features does it have to support compatibility? | ||||||||||||||||||||||||||
▲ | aw1621107 5 days ago | parent | next [-] | |||||||||||||||||||||||||
> Rust is often somewhat stable, but not always. > https://internals.rust-lang.org/t/type-inference-breakage-in... > https://github.com/rust-lang/rust/issues/127343 > 300 comments on Github. > https://github.com/NixOS/nixpkgs/pull/332176 Might worth noting that this change technically doesn't violate Rust's stability guarantees since type inference changes and/or adding new impls are exempt. Of course, that doesn't really help with the question of whether this change should have been made in the given timeframe (as opposed to the socket struct change IIRC?), but that ship has long sailed. | ||||||||||||||||||||||||||
| ||||||||||||||||||||||||||
▲ | pjmlp 5 days ago | parent | prev [-] | |||||||||||||||||||||||||
I can write C++98 or C++11 code that will fail in a C++23 compiler, because C++ also isn't 100% backwards compatible. | ||||||||||||||||||||||||||
|