To me this is way more significant than other random c++-to-rust-AI-rewrite. If they can pull it off on core C++ libraries en masse, I don't know if C++ will still be relevant in a few years.
I look forward to a post from google on this effort.
To me this is way more significant than other random c++-to-rust-AI-rewrite. If they can pull it off on core C++ libraries en masse, I don't know if C++ will still be relevant in a few years.
I look forward to a post from google on this effort.
And people are worried about human extinction when this is the potential trade-off!
C++'s death cannot come soon-enough.
Seriously though, things have changed so incredibly rapidly in the past year or so. I have never been such an efficient or such a proficient engineer than I have this past year (delivering feature after feature, project after project, faster and better than I could before with better feedback from users etc) and I don't even see the code any more. It could be c++, it could be python, or java or what ever - I don't really care any more: the computer deals with that trivia while I concentrate on what to build and how it should work.
Its amazing. It really is.
(Full disclosure: I am one of the coauthors)
I'd say so! We aim to have our replacements to be `forbid(unsafe)` - no raw pointers - outside of `ffi.rs`. Of course it's tricky because we need to interoperate with existing C code, but we've been trying to come up with abstractions that make this a bit more ergonomic (https://github.com/google/safer_cffi).
The standards body members are still fighting about whether memory safety is important enough to change the language for, so, I would guess the answer is "no".
[0] https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p27...
This year, maybe next, maybe a year or two after that, is probably the most C++ lines of code in production use there will ever be. Why would one choose C++ for new projects at this point? There are niches where Rust is still uncomfortable or just doesn't have the support, but not for much longer. Models are very good at Rust and good at porting to Rust. And, Rust is a good language for models because it is so strict...it helps keep them in line.
Let's put [Citation needed] on this and let's assume that your personal opinion bubble of developers doesn't really represent the combined worlds software industry. Mind actually proving that there's a significant decline of use of C++ outside the hype crowd?
> Why would one choose C++ for new projects at this point?
Why indeed would you choose a language supported on every running platform on this world with a massive library of supported dependencies and mature compilers developed by stable teams.
(I'd probably also personally choose Rust for new projects, but let's make this a practice in "not everyone is like me" empathy.)
Which taken to the logical conclusion will mean its disappearance.
Except there are plenty of industry standards that only acknowledge C and C++, and safer languages that depend on them for their own compilers, including mighty Rust.
There are billions of lines of C++ code in production use. That doesn't disappear overnight, and I've never said it would or even suggested it would disappear overnight. But, the relevance of C++ for the average developer seems likely to never be higher than is it today, and the amount of code written in C++ vs. safer languages, seems likely to decline.
You're arguing with a different assertion than the one I've made.
COBOL latest ISO version is from 2023, by the way.
High level languages :
- compress low level patterns into high level abstractions which save context/token
- express higher level meaning through things like names
- express and enforce constraints through type system
LLMs are context constrained, do really well with tools that help them iterate towards a correct solution (type systems) and work on human language (although they are compressing it to be more token efficient).Why would you take something compilers are really good at (translating high level concepts into low level hardware instructions) and bake that into LLMs
If anything LLM programming language will be something like high level IR that's token optimized, but honestly the AI labs are so lazy (or bad) at fundamental engineering (look at their sandboxing solutions LOL), they are going to keep pumping training on shell/python/rust RL environments.
These things are hard for a human to do, but easy for a machine to do.
We are not there yet, not in 2026. Maybe in 2030?
Rate of change is increasing too fast.
I know this is somewhat of a meme now but I do think the predominant language will be "typing/speaking to a coding agent in your native language."