3 ms·
No. Carbon is an experiment to solve Google's challenges with C++, which look very different to, say, the challenges of the games industry or those of embedded
by danpalmer 4y ago
No.
Carbon is an experiment to solve Google's challenges with C++, which look very different to, say, the challenges of the games industry or those of embedded software development. C++ is widely used enough that it would take decades of sustained development specifically targeting replacing it across all the areas it is used to make a dent.
- nine_k 4y agoIndeed. C++ will be displaced (not replaced) by the usual suspects: Rust, Zig, Golang, maybe even niche languages like Nim in certain areas, where C++ used to be the only sane choice. It's a bit like Fortran has been displaced by C, C++, Julia, even Python (with Numpy / Scipy) from the realm of numeric code where it used to reign supreme. It does not mean that important Fortran code does not exist any more, or even that new Fortran code is not written every day. It just means that Fortran is no longer dominant, and in many areas is definitely not the first choice. Same is happening to C++.
- humanrebar 4y agoNew Fortran is written all the time though. It might even be as much Fortran as was written in it's heyday. Programming is much, much bigger than it used to be.
- nine_k 4y agoCertainly! Fortran is just not the only game in the numerical town, and likely it's not dominant any more, but it's alive and kicking. (Well, new Cobol code gets written.)
- BenFrantzDale 4y agoAs one data point: we are replacing Golang with C++ for homogeneity and not-weirdness. C++ has problems but it is very good at scaling and being boring, which is a good thing.
- deleted 4y ago[deleted]
- hot_gril 4y agoLast time they tried to replace C++, it was with Golang.
- mr90210 4y agoExactly…
- seabrookmx 4y agoWell hopefully they learned something :)
- jeroenhd 4y agoIf I recall, Golang was made to make fresh college graduates more productive. I don't know if large C++ code bases are a good place to get junior devs started, there's quite a risk that they'll introduce subtle bugs because of C++'s... C++-ness if you don't give them an in-depth course before putting them to serious work. C++ and Go are languages with different stengths, purposes, and use cases. Golang only accepts one way of doing things and it looks like Python. It makes assumptions to replace complexity so you don't need to think too deeply in many cases. I would never pick it for any serious project, but as a quick one-off tool, especially if you're planning on networking it, Go can get the job done easily and painlessly enough. Now, Dart, on the other hand, that's a language that doesn't need to exist in my opinion. It's ES5/ES6 with some tweaks but IMO TypeScript has since easily surpassed it at a language level. I don't know why Dart still exists, but we're stuck with it now that Flutter uses it.
- hot_gril 4y agoIt was made by veteran SWEs frustrated with C++ in whatever level of code that it was too pedantic for. I think it was targeting all that stuff that was written in C++ rather than Java for performance reasons but could still use bounds checking and GC. Pretty specific use case. Java, Python, or JS will still be a lot quicker to work with for higher-level things or quick scripts.